home *** CD-ROM | disk | FTP | other *** search
Wrap
/* File: GXPrintingPriv.h Contains: QuickDraw GX to PostScript conversion code. Version: Technology: Quickdraw GX 1.1.x Copyright: © 1994-1997 by Apple Computer, Inc., all rights reserved. */ #ifndef __GXPRINTINGPRIV__ #define __GXPRINTINGPRIV__ #ifndef __CONDITIONALMACROS__ #include <ConditionalMacros.h> #endif #ifndef __MIXEDMODE__ #include <MixedMode.h> #endif #ifndef __TYPES__ #include <Types.h> #endif #ifndef __QUICKDRAW__ #include <Quickdraw.h> #endif #ifndef __APPLETALK__ #include <AppleTalk.h> #endif #ifndef __SERIAL__ #include <Serial.h> #endif #ifndef __ADSP__ #include <ADSP.h> #endif #ifndef __NUMBERFORMATTING__ #include <NumberFormatting.h> #endif #ifndef __PROCESSES__ #include <Processes.h> #endif #ifndef __PRINTING__ #include <Printing.h> #endif #ifndef __GXMESSAGESPRIV__ #include <GXMessagesPriv.h> #endif #ifndef __GXPRINTING__ #include <GXPrinting.h> #endif #ifndef __GXPRINTERDRIVERS__ #include <GXPrinterDrivers.h> #endif #if PRAGMA_ONCE #pragma once #endif #ifdef __cplusplus extern "C" { #endif #if PRAGMA_IMPORT #pragma import on #endif #if PRAGMA_STRUCT_ALIGN #pragma options align=mac68k #elif PRAGMA_STRUCT_PACKPUSH #pragma pack(push, 2) #elif PRAGMA_STRUCT_PACK #pragma pack(2) #endif typedef CALLBACK_API_C( gxLoopStatus , DTPProcPtr )(Str31 dtpName, void *refCon); typedef CALLBACK_API_C( OSErr , GXCoreObjectFlattenProcPtr )(void *object, GXPrintingFlattenUPP flattenProc, void *refCon); typedef STACK_UPP_TYPE(DTPProcPtr) DTPUPP; typedef STACK_UPP_TYPE(GXCoreObjectFlattenProcPtr) GXCoreObjectFlattenUPP; enum { uppDTPProcInfo = 0x000003D1 }; /* 1_byte Func(4_bytes, 4_bytes) */ enum { uppGXCoreObjectFlattenProcInfo = 0x00000FE1 }; /* 2_bytes Func(4_bytes, 4_bytes, 4_bytes) */ #define NewDTPProc(userRoutine) (DTPUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppDTPProcInfo, GetCurrentArchitecture()) #define NewGXCoreObjectFlattenProc(userRoutine) (GXCoreObjectFlattenUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppGXCoreObjectFlattenProcInfo, GetCurrentArchitecture()) #define CallDTPProc(userRoutine, dtpName, refCon) CALL_TWO_PARAMETER_UPP((userRoutine), uppDTPProcInfo, (dtpName), (refCon)) #define CallGXCoreObjectFlattenProc(userRoutine, object, flattenProc, refCon) CALL_THREE_PARAMETER_UPP((userRoutine), uppGXCoreObjectFlattenProcInfo, (object), (flattenProc), (refCon)) /* Printing Core Types...*/ struct TAppOverride { short messageID; void * override; }; typedef struct TAppOverride TAppOverride; struct TAppOverrideTableRec { short numOverrides; TAppOverride theOverrides[1]; }; typedef struct TAppOverrideTableRec TAppOverrideTableRec; typedef TAppOverrideTableRec * TAppOverrideTablePtr; typedef TAppOverrideTablePtr * TAppOverrideTableHdl; struct TPrinterInfo { OSType driverType; OSType printerType; Str31 driverName; Str31 printerName; }; typedef struct TPrinterInfo TPrinterInfo; typedef void * TPrintingClient; typedef void * TPrinterClass; typedef void * TSegmentStack; typedef void * TSegmentTable; typedef void * TGenericTable; /* ******* Async I/O HANDLER CONSTANTS AND TYPEDEFS ********/ typedef UInt32 EInputTermReasons; typedef UInt32 EAIORqstStates; typedef UInt32 EAIORqstTypes; typedef UInt32 ECommProtocolType; typedef CALLBACK_API_C( void , ProtocolFilterProcPtr )(UInt32 refcon, Handle protocolData); typedef STACK_UPP_TYPE(ProtocolFilterProcPtr) ProtocolFilterUPP; enum { uppProtocolFilterProcInfo = 0x000003C1 }; /* no_return_value Func(4_bytes, 4_bytes) */ #define NewProtocolFilterProc(userRoutine) (ProtocolFilterUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppProtocolFilterProcInfo, GetCurrentArchitecture()) #define CallProtocolFilterProc(userRoutine, refcon, protocolData) CALL_TWO_PARAMETER_UPP((userRoutine), uppProtocolFilterProcInfo, (refcon), (protocolData)) /********** Structure Types **********/ /* Information about a completed I/O operation*/ struct HIORqstRslt { UInt16 requestID; /* Identifier that uniquely identifies request*/ SInt16 errRslt; /* Error result from processing I/O*/ EAIORqstTypes rqstType; /* Type of I/O request*/ EInputTermReasons termReason; /* Reason for terminating an input operation*/ Ptr sendBuffer; /* HIOSendBuffer: contains sendBuffer pointer // pointer */ /* HIOStatusConn: contains cmndBuffer pointer*/ /* HIOSendSCSICmnd: contains scsiCmnd pointer*/ /* HIOSCSISendBuffer: contains sendBuffer pointer*/ /* HIOSCSIStatusConn: contains cmndBuffer pointer*/ /* HIOControlConn: contains cmndBuffer pointer*/ Ptr rcvBuffer; /* HIOReceiveBuffer: contains rcvBuffer pointer */ /* HIOStatusConn: contains responseBuffer pointer*/ /* HIOSCSIReceiveBuffer: contains rcvBuffer pointer*/ /* HIOSCSIStatusConn: contains responseBuffer pointer*/ /* HIOSControlConn: contains responseBuffer pointer*/ UInt32 numBytesSent; /* HIOSendChar: number of bytes sent*/ /* HIOSendBuffer: number of bytes sent*/ /* HIOStatusConn: number of cmnd bytes sent*/ /* HIOSendSCSICmnd: number of cmnd bytes sent*/ /* HIOSCSISendBuffer: number of bytes sent*/ /* HIOSCSIStatusConn: number of cmnd bytes sent*/ /* HIOControlConn: number of cmnd bytes sent*/ UInt32 numBytesRcvd; /* HIOReceiveChar: number of bytes read*/ /* HIOReceiveBuffer: number of bytes read*/ /* HIOStatusConn: number of response bytes read */ /* HIOSCSIReceiveBuffer: number of bytes read*/ /* HIOSCSIStatusConn: number of response bytes read*/ /* HIOControlConn: number of response bytes returned */ char rcvdChar; /* HIOReceiveChar: if rcvdChar parameter*/ /* was nil, contains the character read.*/ }; typedef struct HIORqstRslt HIORqstRslt; typedef HIORqstRslt * HIORqstRsltPtr; /* ******* LIST HANDLER CONSTANTS AND TYPEDEFS ********/ typedef char EListType; /* enums for singly or doubly linked list*/ enum { eSingle = 0, eDouble = 1 }; /* The generic single link */ struct TSLink { Handle hNext; }; typedef struct TSLink TSLink; typedef TSLink * TPSLink; typedef TPSLink * THSLink; /* The generic double link */ struct TDLink { Handle hNext; Handle hPrev; }; typedef struct TDLink TDLink; typedef TDLink * TPDLink; typedef TPDLink * THDLink; struct TListHead { Handle hNext; Handle hLast; EListType listTyp; char padByte; short listLen; }; typedef struct TListHead TListHead; typedef TListHead * TPListHead; typedef TPListHead * THListHead; /* ******* DIALOG HANDLER CONSTANTS AND TYPEDEFS ********/ /*--------------------------------------- Structures ----------------------------------------*/ /* TPanelData keeps track of panel information internally. It is a field of TPanelLink. */ struct TPanelData { short panelResId; /* id of 'ppnl' resource*/ long refCon; /* panel refcon*/ Str31 panelName; char bPanelId; /* used internally to find panel*/ char padByte1; short scriptId; /* script for panel name.*/ short iIconID; short iDitlID; short resourcefNum; /* file id to locate panel resources*/ Handle hToXdtl; /* handle to xdtl info for the panel*/ TPrintingClient clientID; /* provided by Core. ids the exact client.*/ /* it's used to setup resource chain when*/ /* we need to retrieve resources from the client.*/ MessageHandler handlerID; /* also provided by the Core. ids type of entity*/ /* that owns the panel. it's used for SendMessageTo*/ /* calls.*/ }; typedef struct TPanelData TPanelData; typedef TPanelData * TPanelDataPtr; typedef TPanelDataPtr * TPanelDataHdl; /* TPanelLink is a the structure found in the linked list of panel information. There's one link for each panel. */ struct TPanelLink { THSLink hNext; char bPanelId; char bPanelKind; /* app, extension, general, scaling, driver*/ Boolean fMarkForDelete; /* flag to delete on driver switch*/ Boolean fInListAlready; /* flag to avoid readding common panels after switch*/ TPanelData panelData; }; typedef struct TPanelLink TPanelLink; typedef TPanelLink * TPanelLinkPtr; typedef TPanelLinkPtr * TPanelLinkHdl; // TXdtlEntry describes an xdtl entry in an xdtl resource struct TNotRadioButton { unsigned char ditlId; unsigned char select; // for edittext items, true if the text should be selected }; typedef struct TNotRadioButton TNotRadioButton; struct TXdtlEntry { short key; // radiobutton, checkbox, edittextnumber, edittextstring, popup long theTag; // collection tag long id; // collection id short offset; // offset into collection item union { struct TNotRadioButton item;// corresponding ditl item short buttonCount;// for radiobuttons, the number of buttons } entryData; unsigned char radioDitlId; // start of ditl ids for radiobuttons Str15 lowBound; // low bound for edit text numbers Str15 hiBound; // hi bound for edit text number }; typedef struct TXdtlEntry TXdtlEntry; typedef TXdtlEntry *TXdtlEntryPtr; typedef TXdtlEntryPtr *TXdtlEntryHdl; // TXdtlList is used to retrieve the xdtl resource struct TXdtlList { short count; TXdtlEntry entry; }; typedef struct TXdtlList TXdtlList; typedef TXdtlList *TXdtlListPtr; typedef TXdtlListPtr *TXdtlListHdl; /* TPanelResource describes panel resources. The id for this panel is passed to the Dialog Handler through the SetupPanel call. */ struct TPanelResource { Str31 panelTitle; short scriptId; short intlid1; short intlid2; short iconId; short ditlId; }; typedef struct TPanelResource TPanelResource; typedef TPanelResource * TPanelResourcePtr; typedef TPanelResourcePtr * TPanelResourceHdl; /* TDitlItem describes a ditl item.*/ struct TDitlItem { Handle hItem; Rect rItem; char bItemType; char bDataLen; short iData; }; typedef struct TDitlItem TDitlItem; typedef TDitlItem * TDitlItemPtr; typedef TDitlItemPtr * TDitlItemHdl; /* TItemList is used to retrieve the ditl.*/ struct TItemList { short iMaxIndex; TDitlItem ditlList; /* this is the start of an array of dialog items*/ }; typedef struct TItemList TItemList; typedef TItemList * TItemListPtr; typedef TItemListPtr * TItemListHdl; /* procedure definition for dealing with a panel link. this is a parameter for ForAllPanelsDo. */ typedef CALLBACK_API_C( long , TPanelProc )(TPanelLinkHdl hPanelLink, long refCon, Boolean *fStop); typedef STACK_UPP_TYPE(TPanelProc) TPanelProcUPP; enum { uppTPanelProcProcInfo = 0x00000FF1 }; /* 4_bytes Func(4_bytes, 4_bytes, 4_bytes) */ #define NewTPanelProcProc(userRoutine) (TPanelProcUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppTPanelProcProcInfo, GetCurrentArchitecture()) #define CallTPanelProcProc(userRoutine, hPanelLink, refCon, fStop) CALL_THREE_PARAMETER_UPP((userRoutine), uppTPanelProcProcInfo, (hPanelLink), (refCon), (fStop)) /* TXDtlCache stores information about xdtls for the dialog*/ struct TXDtlCache { short arrayCount; /* number of items in hToXdtlArray*/ Handle hToXdtlArray; /* resizeable handle to array of refs into xdtl*/ Handle hCollectionItem; /* the current collection item we are working with*/ CollectionTag lastItemTag; /* tag for current collection item*/ long lastItemId; /* id for current collection item*/ Boolean fRealEditText; /* true if lastEditTextNumber is real*/ char padByte; short lastEditTextNumber; /* parse if we just left there*/ }; typedef struct TXDtlCache TXDtlCache; typedef TXDtlCache * TXDtlCachePtr; typedef TXDtlCachePtr * TXDtlCacheHdl; /* TParseCache stores strings and tables needed to parse numbers for the xdtl edit text boxes. */ struct TParseCache { NumFormatString canonicalInteger; /* format for integers*/ NumFormatString canonicalIntegerNegative; /* format for negative integers*/ NumFormatString canonicalReal; /* format for real numbers*/ NumFormatString canonicalRealNegative; /* format for negative real numbers*/ NumberParts partsTable; /* for international routines to convert number strings*/ }; typedef struct TParseCache TParseCache; typedef TParseCache * TParseCachePtr; typedef TParseCachePtr * TParseCacheHdl; /* HelpDLGResource is used to retrieve the help resource for a panel*/ struct HelpDLGResource { short version; short firstDITLitem; }; typedef struct HelpDLGResource HelpDLGResource; /* TDialogStore is the cache for the dialog handler*/ struct TDialogStore { DialogPtr pDialog; /* the dialog*/ char bDialogType; /* kJobFormatDialog or kPrintDialog or kFormatDialog*/ char dialogState; /* set on return to driver so we know what proc to call on return*/ Boolean fInAdvanced; /* true if in advanced version*/ Boolean fDismissed; /* true on confirm or cancel*/ Boolean fCancelFromConfirmation; /* true if panel cancels user confirmation*/ Boolean fScalingDisabled; /* true when DlgDisableScaling is called*/ char scalingPanelId; /* 0=no support, 1=supported, 2=lockOn*/ char directModeSupport; /* 0=no support, 1=supported, 2=lockOn*/ gxJob theJob; StringPtr dialogTitle; /* for by page format dialog*/ gxFormat theFormat; /* the by page format*/ EventRecord theEvent; /* the current event*/ short action; /* preflight result*/ Boolean wasAMenuEvt; /* true if the last event was a menu event*/ char padByte1; short editItem; /* item effected by menu event*/ gxEditMenuRecord editMenuRec; /* where the edit menu is*/ MenuHandle hEditMenu; /* handle to the edit menu*/ char bMaxPanelId; /* last app panel id assigned*/ char bCurPanelId; /* id of current panel*/ char lastPanelId; /* id of last open panel*/ char bGeneralId; /* id for the General panel*/ Boolean panelChanged; /* for help - true after switch */ char padByte2; short panelPosition; /* used for updating iconlist after driver switch and for adding panel data*/ short iCurDlgItems; /* count of dialog items owned by DialogHandler in current dialog*/ short iCurPanelItems; /* iCurDlgItems + count of dialog items added by driver or app*/ Str31 startPanelName; /* default to General*/ Boolean fNoPanelChanges; /* restricts when panels can be added or removed*/ char padByte3; TPanelLinkHdl hAppPanels; /* handle to last app panel added*/ TPanelLinkHdl hExtPanels; /* handle to last extension panel added*/ TPanelLinkHdl hCommonPanels; /* handle to last common panel added*/ TPanelLinkHdl hDriverPanels; /* handle to last driver panel added*/ TPanelLinkHdl hGeneral; /* general novice panel*/ TPanelLinkHdl hCurPanel; /* current panel*/ THListHead hPanels; /* for additional panels*/ Handle hCurDitl; /* handle to current ditl*/ long itemListSize; /* size of dialog handler item list without panel additions*/ ListHandle hIconList; /* list handle for panel icons*/ short panelCount; /* total dialog panels*/ short lastPanelCount; /* used to save count of panels before driver switch*/ Handle hAlphaIcons; /* sorted list for typeselect*/ Str31 typeBuffer; /* buffer for typeselect*/ short clearThreshold; /* interval for clearing typeselect buffer*/ short lastTime; /* time when last char came into typeselect buffer*/ RgnHandle hCursorRgn; /* empty region for WaitNextEvent*/ Point lastTopRight; /* used to make sure we zoom in place*/ Boolean fFocusedOnList; /* true if focus is on icon list*/ Boolean fNeedToSetupIconList; /* true if icon list has not yet been setup*/ Rect rValid; Rect rPanel; /* local coords for the dialog panel*/ Rect rList; /* local coords for the icon panel*/ Point panelOffset; /* offset for added panels*/ Boolean fHasXdtl; /* true if this panel has an extended ditl*/ char padByte; TXDtlCacheHdl hXDTL; /* xdtl cache*/ TParseCache parseCache; /* international goop for parsing*/ }; typedef struct TDialogStore TDialogStore; typedef TDialogStore * TPDialogStore; typedef TPDialogStore * THDialogStore; struct TFontDesc { short iFontNumber; short iFontSize; short iFontDescender; }; typedef struct TFontDesc TFontDesc; typedef TFontDesc * TFontDescPtr; typedef TFontDescPtr * TFontDescHdl; /* structures to support the old style dialogs*/ struct TDlgRange { short iFstButtonIdx; short iLastButtonIdx; short iWhatsOnNow; short iWhatShouldBeOn; }; typedef struct TDlgRange TDlgRange; /* Definitions for manual feed/mismatch dialogs.*/ enum { gxPaperFeedAliasType = FOUR_CHAR_CODE('pfal'), gxPaperFeedAliasID = gxPrintingTagID }; struct gxPaperFeedAliasEntry { Str31 paperTypeName; long trayToFeedFrom; char specialMapping; Boolean wasManualFeed; }; typedef struct gxPaperFeedAliasEntry gxPaperFeedAliasEntry; typedef gxPaperFeedAliasEntry * gxPaperFeedAliasEntryPtr; typedef gxPaperFeedAliasEntryPtr * gxPaperFeedAliasEntryHdl; struct gxPaperFeedAliasRec { long count; gxPaperFeedAliasEntry alias[1]; }; typedef struct gxPaperFeedAliasRec gxPaperFeedAliasRec; typedef gxPaperFeedAliasRec * gxPaperFeedAliasPtr; typedef gxPaperFeedAliasPtr * gxPaperFeedAliasHdl; typedef gxPanelSetupRecord * PanelSetupPtr; typedef gxPanelInfoRecord * PanelInfoPtr; enum { kiMaxOldSizes = 6 /* max number of page sizes in old drivers*/ }; typedef Point TRgPaperSize[6]; struct TPSizeInfo { short iPgSzCt; TRgPaperSize rgPaperSize; Str255 labels; }; typedef struct TPSizeInfo TPSizeInfo; typedef TPSizeInfo * TPPSizeInfo; typedef TPPSizeInfo * THPSizeInfo; typedef CALLBACK_API_C( long , DialogInitProc )(DialogPtr pDlg, long refCon); typedef CALLBACK_API_C( long , DialogUpdateProc )(DialogPtr pDlg, long refCon, short itemHit); typedef STACK_UPP_TYPE(DialogInitProc) DialogInitProcUPP; typedef STACK_UPP_TYPE(DialogUpdateProc) DialogUpdateProcUPP; enum { uppDialogInitProcProcInfo = 0x000003F1 }; /* 4_bytes Func(4_bytes, 4_bytes) */ enum { uppDialogUpdateProcProcInfo = 0x00000BF1 }; /* 4_bytes Func(4_bytes, 4_bytes, 2_bytes) */ #define NewDialogInitProcProc(userRoutine) (DialogInitProcUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppDialogInitProcProcInfo, GetCurrentArchitecture()) #define NewDialogUpdateProcProc(userRoutine) (DialogUpdateProcUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppDialogUpdateProcProcInfo, GetCurrentArchitecture()) #define CallDialogInitProcProc(userRoutine, pDlg, refCon) CALL_TWO_PARAMETER_UPP((userRoutine), uppDialogInitProcProcInfo, (pDlg), (refCon)) #define CallDialogUpdateProcProc(userRoutine, pDlg, refCon, itemHit) CALL_THREE_PARAMETER_UPP((userRoutine), uppDialogUpdateProcProcInfo, (pDlg), (refCon), (itemHit)) /* ******* COOL PRINTING ALERT HANDLER CONSTANTS AND TYPEDEFS ********/ /* define symbols for the caller*/ enum { kNoIcon = -1, /* indicates no icon for alert */ kDefaultSystemSize = 0, /* use the default system size for the message font */ kNoDefaultTitle = 0, /* no default button specified */ kDefaultAction = 1, /* the action title goes on the default button */ kDefaultTitle2 = 2, /* the second title goes on the default button */ kDefaultTitle3 = 3, /* the third title goes on the default button */ kNoCancelTitle = 0, /* no cancel button specified */ kCancelAction = 1, /* the action title goes on the cancel button */ kCancelTitle2 = 2, /* the second title goes on the cancel button */ kCancelTitle3 = 3, /* the third title goes on the cancel button */ kActionTitle = 1, /* the action title (for checking returned title index) */ kTitle2 = 2, /* the second title (for checking returned title index) */ kTitle3 = 3 /* the third title (for checking returned title index) */ }; struct TCoolInfoRec { short coolVersion; /* this may be used in the future to specify other dialog types*/ /* alerts are version 1.*/ short coolIconId; /* the id for the alert icon (-1 specifies no icon)*/ short coolSize; /* point size for alert message*/ char coolDefault; /* designates which label goes on the default button*/ char coolCancel; /* designates which label goes on the cancel button*/ short coolTextLength; /* the start of the strings*/ }; typedef struct TCoolInfoRec TCoolInfoRec; typedef TCoolInfoRec * TCoolInfoPtr; typedef TCoolInfoPtr * TCoolInfoHdl; struct TCoolRecord { TCoolInfoRec coolInfo; Ptr coolText; /* the alert message*/ StringPtr coolTitles[4]; /* titles for the 3 buttons - */ /* coolTitles[1] is the action title.*/ /* coolTitles[0] is not used - we want arrays*/ /* to act 1 based since ditls are 1 based -*/ /* it simplifies alot of the code.*/ StringPtr coolFont; /* font name - ' ' = system, 'A' = app*/ StringPtr coolAlertTitle; /* title for alert ( for status cool alerts )*/ }; typedef struct TCoolRecord TCoolRecord; typedef TCoolRecord * TCoolPtr; typedef TCoolPtr * TCoolHandle; struct TButtonRecord { short buttonTotalWidth; /* holds width of buttons and spaces between*/ short buttonHeight; /* holds height of the buttons*/ short ditlTitle[4]; /* maps ditl items to caller titles (indexes from 1)*/ short buttonWidth[4]; /* maps button widths to caller titles (indexes from 1)*/ short buttonCount; /* number of buttons in alert*/ short cancelDitlId; /* which ditl item is the cancel*/ Boolean fUsesIcon; /* true if alert has an icon*/ }; typedef struct TButtonRecord TButtonRecord; typedef TButtonRecord * TButtonPtr; typedef TButtonPtr * TButtonHandle; /* ******* STATUS HANDLER CONSTANTS AND TYPEDEFS ********/ /* Constants returned from ManualFeedStatus */ enum { kAutoFeedButton = 3 }; typedef gxStatusRecord * StatusRecordPtr; /* ******* BUFFER HANDLER CONSTANTS AND TYPEDEFS ********/ typedef void * TGBMap; /* ******* FONT DATABASE HANDLER CONSTANTS AND TYPEDEFS ********/ typedef void * TFontDbase; enum { fdbNoFontFlags = 0x00000000, fdbUseMac8Bit = 0x00000001, /* Indicates that the Mac 8 bit standard encoding should be used for PostScript.*/ fdbExcludeFontPrereqs = 0x00000002 /* Indicates that a font's prerequisits should be excluded from prerequisite list.*/ }; typedef long TfdbInfoFlags; /** Flags may be set by the FontDatabase handler, also may be set by client **/ struct fontSfntMap { gxFont fontID; long newSfntRsrcID; }; typedef struct fontSfntMap fontSfntMap; /* ******* SPOOLING HANDLER CONSTANTS AND TYPEDEFS ********/ /* Constants...*/ enum { kDontUseMessaging = false, kUseMessaging = true }; /* Types...*/ typedef unsigned long SHFlags; struct SpoolFilePageDirRec { long pageSize; long pageLoc; }; typedef struct SpoolFilePageDirRec SpoolFilePageDirRec; typedef SpoolFilePageDirRec * SpoolFilePageDirPtr; typedef SpoolFilePageDirPtr * SpoolFilePageDirHdl; enum { kSpoolFilePageDirLen = sizeof(SpoolFilePageDirRec) }; struct SpoolFileFormatDirRec { long formatSize; long formatLoc; }; typedef struct SpoolFileFormatDirRec SpoolFileFormatDirRec; typedef SpoolFileFormatDirRec * SpoolFileFormatDirPtr; typedef SpoolFileFormatDirPtr * SpoolFileFormatDirHdl; enum { kSpoolFileFormatDirLen = sizeof(SpoolFileFormatDirRec) }; /* ******* FILE HANDLER CONSTANTS AND TYPEDEFS ********/ /* Constants...*/ enum { kAliasID = 0 }; /* ID of alias resource in alias file*/ enum { kStartUpVRef = -1 }; /* refnum of 1st mounted disk (i.e., startup disk)*/ enum { kDontFlush = false, kDoFlush = true }; /* for flushing volume on FHCloseFile*/ enum { kNotUniqueName = false, kUniqueName = true }; /* for generating a unique file name*/ enum { kDefaultBufferSize = -1, kNoBuffer = 0 }; /* for buffer sizes*/ /* Types...*/ typedef void * TFile; struct FHFileData { FSSpec fileSpec; short dataFork; short resourceFork; }; typedef struct FHFileData FHFileData; typedef FHFileData * FHFileDataPtr; typedef FHFileDataPtr * FHFileDataHdl; /* ******* UG LIBRARY CONSTANTS AND TYPEDEFS ********/ /* Error codes*/ enum { ugUserAlreadyExists = 1, ugGroupAlreadyExists = 2, ugULInfoRecNotCreated = 3, ugNoMoreUGs = 4, ugUserNotFound = 5, ugGroupNotFound = 6, ugNotAUser = 7, ugNotAGroup = 8, ugTooManyGroups = 9, ugNotaMember = 10, ugNoMoreUsers = 11, ugNoMoreGroups = 12, ugBadParamErr = 13, ugUserAlreadyAMember = 14, ugAPrmryGroupExists = 15, ugServerRunning = 16, ugAdminRunning = 17, ugNotBtree = 18, ugBadKey = 19, ugDskFull = 20, ugBadUID = 21, ugInvalidPasswd = 22, ugEOF = 23, ugBOF = 24, ugDefNameErr = 98, ugFatalError = 99 }; typedef unsigned char Str199[200]; typedef unsigned char Str8[9]; /* UserFlags*/ enum { IACEnabled = 1, LoginEnabled = 0x0100, SuperUser = 0x0200, NoChangePwd = 0x0400, GetNewPwd = 0x1000 }; /* ServerFlags[0]*/ enum { Apple2 = 1, NoGuests = 2, IACGuestEnabled = 16, IACGlobalEnabled = 32 }; /* ServerFlags[1]*/ enum { DontSavePwd = 1 }; /* defines for UGSetUserInfo*/ enum { ChngUserFlags = 1, ChngUserPasswd = 2, ChngUAll = 3 }; /* defines for UGSetULInfo*/ enum { ChngSrvrFlags = 1, ChngAdmnKey = 2, ChngMinPwdLen = 4, ChngMaxBadLogins = 8, ChngPwdExpDate = 16, ChngULAll = 31 }; /* Misc defines*/ enum { Sys7SrvrVer = 3, AS3SrvrVer = 4 }; /* These are the Param Blocks for the interface calls: */ /* Use this ParamBlock for UGOpenFile, UGCloseFile or UGCreateFile */ struct UGFilePB { QElemPtr qLink; short qType; short ugTrap; Ptr ugCmdAddr; ProcPtr ugCompletion; OSErr ugResult; StringPtr ugNamePtr; short ugVRefNum; short ugRefNum; long ugDirID; long ugAccessID; unsigned long ugUserID; unsigned long ugGroupID; StringPtr ugAdminKey; }; typedef struct UGFilePB UGFilePB; /* Use this ParamBlock for UGNewUser and UGGetUserInfo*/ struct UGUserPB { QElemPtr qLink; short qType; short ugTrap; Ptr ugCmdAddr; ProcPtr ugCompletion; OSErr ugResult; StringPtr ugNamePtr; short ugVRefNum; short ugRefNum; long ugDirID; long ugAccessID; unsigned long ugUserID; unsigned long ugGroupID; short ugPosOffset; /* 0 - current, 1 - next*/ StringPtr ugMisc; /* used to rename user*/ short ugChngFlags; /* 1 - change passwd, 2 - change userflags, 3 - all*/ StringPtr ugPassword; long ugUserFlags; short ugNumBadLogins; long ugPwdDate; short ugNumGroups; long ugGroups[42]; }; typedef struct UGUserPB UGUserPB; /* Use this ParamBlock for UGNewGroup, UGGetGroupInfo, and AddUserToGroup*/ struct UGGroupPB { QElemPtr qLink; short qType; short ugTrap; Ptr ugCmdAddr; ProcPtr ugCompletion; OSErr ugResult; StringPtr ugNamePtr; short ugVRefNum; short ugRefNum; long ugDirID; long ugAccessID; unsigned long ugUserID; unsigned long ugGroupID; short ugPosOffset; /* 0 - current, 1 - next*/ StringPtr ugMisc; /* used to rename group*/ Boolean ugPrimaryFlag; char pad; }; typedef struct UGGroupPB UGGroupPB; struct UGServerPB { QElemPtr qLink; short qType; short ugTrap; Ptr ugCmdAddr; ProcPtr ugCompletion; OSErr ugResult; StringPtr ugNamePtr; short ugVRefNum; short ugRefNum; long ugDirID; long ugAccessID; unsigned long ugUserID; unsigned long ugGroupID; StringPtr ugAdminKey; short ugSrvrVersion; short ugChngFlags; /* 1 - srvrflags, 2 - admin key, 4 - minpwdlen, 8 - maxbadlogins, 16 - pwdexpdate, 31 - all*/ long ugSrvrFlags[2]; Byte ugMinPwdLen; char pad; short ugMaxBadLogins; long ugPwdExpDate; }; typedef struct UGServerPB UGServerPB; union UGParamBlockRec { UGFilePB ugFilePB; UGUserPB ugUserPB; UGGroupPB ugGroupPB; UGServerPB ugServerPB; }; typedef union UGParamBlockRec UGParamBlockRec; typedef UGParamBlockRec * UserGroupPBPtr; /* ================================================================================ */ /* ******* MISC PRIVATE DEFINES ********/ /* ================================================================================ */ /* current Printing Manager version number (1.2)*/ enum { kPrintingMgrVersion = 0x00010200 }; /* current QDGX version number (1.2)*/ enum { kQuickDrawGXVersion = 0x00010200 }; /* Miscellaneous Constants*/ enum { kDynamicArray = 1, kVariableArraySize = 16, maxPrinterNameSz = 99 /* Maximum size of the printer's network name*/ }; /********** Resource Type and ID Constants **********/ enum { papSpecDataType = FOUR_CHAR_CODE('PPTL'), /* resource type of PAP protocol specific info.*/ serialSpecDataType = FOUR_CHAR_CODE('SPTL'), /* resource type of Serial protocol specific info.*/ scsiSpecDataType = FOUR_CHAR_CODE('sPTL') /* resource type of SCSI protocol specific info.*/ }; /* Kinda yucky way to do bit masks. One of Nik's "great" ideas.*/ enum { noBit = 0, bit0 = 1, bit1 = (1 << 1), bit2 = (1 << 2), bit3 = (1 << 3), bit4 = (1 << 4), bit5 = (1 << 5), bit6 = (1 << 6), bit7 = (1 << 7), bit8 = (1 << 8), bit9 = (1 << 9), bit10 = (1 << 10), bit11 = (1 << 11), bit12 = (1 << 12), bit13 = (1 << 13), bit14 = (1 << 14), bit15 = (1 << 15), bit16 = (1 << 16), bit17 = (1 << 17), bit18 = (1 << 18), bit19 = (1 << 19), bit20 = (1 << 20), bit21 = (1 << 21), bit22 = (1 << 22), bit23 = (1 << 23), bit24 = (1 << 24), bit25 = (1 << 25), bit26 = (1 << 26), bit27 = (1 << 27), bit28 = (1 << 28), bit29 = (1 << 29), bit30 = (1 << 30), bit31 = (1 << 31) }; /********************************************************************************* * CONSTANTS PART 1: * *********************************************************************************/ /* version of the PFE available -- not installed until the PFE is actually running*/ enum { gestaltPrintingFinderExtensionVersion = FOUR_CHAR_CODE('pxtn') }; /* memory management constants..*/ /* for filling out heap preferences word in allocation flags*/ enum { noHeap = 0, appHeap = 1, currentHeap = 2, mfHeap = 3, sysHeap = 4 }; /* shift heapType constant by one of these to place in 32-bit flags*/ enum { heapToTryFirst = 0, heapToTrySecond = 4, heapToTryThird = 8, heapToTryFourth = 12, heapToTryLast = heapToTryFourth }; enum { allocPointerMask = 0x00010000, allocClearMask = 0x00020000, autoDisposeMask = 0x00040000 /* not yet implemented*/ }; /* Example usage of memory allocation constants to build 32-bit flags... The following example allocates a clear 10 byte handle trying the MultiFinder heap first, the app heap second, and the System heap last, ignoring the current heap. unsigned long flags = (mfHeap << heapToTryFirst) + (appHeap << heapToTrySecond) + (sysHeap << heapToTryThird) + allocClearMask; anErr = PrNewAllocation(flags, 10, &h); */ /* File types for the life cycle of spool files: ???? Creator type which Finder will not open nor print ttxt', Creator type for spool files and PDDs. ?job', File that failed during spooling sjob', File type for PDDs tjob', File type for Spool Files rjob', File has been sent for remote printing qjob' File crashed during imaging */ enum { kNeverOpenType = FOUR_CHAR_CODE('????'), kPrintViewerType = FOUR_CHAR_CODE('ttxt'), kIncompleteType = FOUR_CHAR_CODE('?job'), kPDDFileType = FOUR_CHAR_CODE('sjob'), kSpoolFileType = FOUR_CHAR_CODE('tjob'), kRemoteSpoolType = FOUR_CHAR_CODE('rjob'), kCrashedSpoolType = FOUR_CHAR_CODE('qjob') }; /* The is no message for opening spool files, so these are here instead of GXPrintingMessages.h Options for OpenSpoolFile. */ enum { gxNoOpenOptions = 0x00000000, /* just open the file*/ gxReadFontDataBase = 0x00000001 /* read in the font data base*/ }; /* private dialog panel events (positive values are in PrintingMessages.h)*/ enum { kPanelNewTargetEvt = -1, kPanelChoiceEvt = -2 }; /* private dialog/panel results*/ enum { kNothingInteresting = -1, kDriverChanged = -2, kPrinterChanged = -3, kDirectModeOn = -4, kDirectModeOff = -5 }; /* handlers which rely on a job-based context for storage*/ enum { eAsyncIOHandler = 0, eDialogHandler = 1, eStatusHandler = 2, eNumHandlers = 3 /* add handlers before eNumHandlers!*/ }; /********************************************************************************* * STRUCTURES * *********************************************************************************/ /* ================================================================================ */ /* ******* PRINTINGEPPC CONSTANTS AND TYPES ********/ enum { kMaximumStatusLength = 512 }; /* defines for Finder extensions*/ enum { kFinderExtension = FOUR_CHAR_CODE('fext'), kPrintingExtension = FOUR_CHAR_CODE('pxtn') }; /* AppleEvent type*/ enum { kAEPrinterShareEvent = FOUR_CHAR_CODE('pshr') }; /* Event types, for eventType*/ enum { kTypeRequest = FOUR_CHAR_CODE('RQST'), /* a request to a program*/ kTypeReply = FOUR_CHAR_CODE('RPLY') /* a reply back for that request*/ }; /* ---------------------------------------------------------------------- APPLE EVENT CLASS STRUCTURES ---------------------------------------------------------------------- */ /* Arbitrary data this is used in the client code for stuffing data without having to worry about what the actual format is */ struct ArbitraryClass { unsigned char arbitraryData[16]; }; typedef struct ArbitraryClass ArbitraryClass; /* ----------------------------------------------------------------------*/ /* QueueClass*/ enum { kStopQueue = FOUR_CHAR_CODE('stop'), kStartQueue = FOUR_CHAR_CODE('strt'), kRestartQueueSecurity = FOUR_CHAR_CODE('rsrt'), kHaltCurrentJobs = FOUR_CHAR_CODE('khcj') }; /* ----------------------------------------------------------------------*/ /* SpoolFileClass*/ enum { kDeleteSpoolFile = FOUR_CHAR_CODE('delt'), kSetPrioritySpoolFile = FOUR_CHAR_CODE('setp'), kPrintSpoolFile = FOUR_CHAR_CODE('prsf') }; struct SpoolFileClass { FSSpec spoolFile; /* which spool file this is for*/ long newPriority; /* new priority for spool file*/ long newPrintTime; /* new print time for spool file*/ }; typedef struct SpoolFileClass SpoolFileClass; /* ----------------------------------------------------------------------*/ /* SharePrinterClass*/ enum { kCreateSharedPrinter = FOUR_CHAR_CODE('shar'), kDeleteSharedPrinter = FOUR_CHAR_CODE('rmov') }; struct SharePrinterClass { long shutdownDelay; /* for 'shar', 1=remove from network, 0=don't remove*/ Str255 shutdownString; /* string to display on users machine on shutdown*/ }; typedef struct SharePrinterClass SharePrinterClass; /* ----------------------------------------------------------------------*/ /* DeviceStatusClass*/ enum { kDeviceStatusInfo = FOUR_CHAR_CODE('stat'), kRemoteDeviceStatus = FOUR_CHAR_CODE('rsta'), kDeviceStatusUserReply = FOUR_CHAR_CODE('user'), kTicklePacket = FOUR_CHAR_CODE('tick'), kJobErrorPacket = FOUR_CHAR_CODE('jerr'), kLocalServer = -1 }; struct DeviceStatusClass { long queueID; /* id of remote queue (or kLocalServer)*/ long deviceID; /* id of remote device (or kLocalServer)*/ long magicCookie; /* magic cookie for changed status*/ long userCount; /* # users on the server (or kLocalServer)*/ unsigned long queueState; /* state of queue (ie, stopped etc)*/ long currentlyPrintingFileID; /* which file is currently printing*/ long currentlyPrintingPage; /* which page is printing*/ Fixed percentage; /* percentage complete*/ char currentStatus[512]; /* driver-specific status data*/ }; typedef struct DeviceStatusClass DeviceStatusClass; /* ----------------------------------------------------------------------*/ /* RemoteJobListClass*/ enum { kRemoteJobList = FOUR_CHAR_CODE('flst'), kNoSuchJobID = 0, /* never used as a fileID (so say HFS people)*/ kJobIDMaxCount = 100 /* a convenient number of fileIDs*/ }; struct RemoteJobListClass { long queueID; /* id of remote queue*/ long deviceID; /* id of remote device*/ long magicCookie; /* magic cookie for changed jobList*/ long count; /* count of remote job id's*/ long remoteJobID[100]; /* id of remote job*/ }; typedef struct RemoteJobListClass RemoteJobListClass; typedef RemoteJobListClass * RemoteJobListPtr; /* ----------------------------------------------------------------------*/ /* RemoteJobInfoClass*/ enum { kRemoteJobInfo = FOUR_CHAR_CODE('finf'), kSetRemoteJobInfo = FOUR_CHAR_CODE('sinf') }; struct JobName { /* these strings are packed and word-aligned*/ Str31 appName; /* application that created this job*/ Str31 documentName; /* name of document being printed*/ Str31 userName; /* user who submitted the job*/ }; typedef struct JobName JobName; typedef JobName * JobNamePtr; struct RemoteJobInfoClass { long queueID; /* target queue*/ long deviceID; /* target device*/ long jobID; /* target job (file)*/ long magicCookie; /* psNoCookies if not supported*/ long priority; /* job priority*/ unsigned long timeToPrint; /* absolute time of job*/ long jobTimeout; /* in ticks*/ long firstPageToPrint; /* start printing from this page*/ long jobAlert; /* when to alert user*/ long numPages; /* pages of job*/ long numCopies; /* number of copies of each page*/ OSType jobType; /* type of job*/ JobName s; /* job name record*/ }; typedef struct RemoteJobInfoClass RemoteJobInfoClass; typedef RemoteJobInfoClass * RemoteJobInfoPtr; /* ----------------------------------------------------------------------*/ /* LookupServerClass*/ enum { kLookupServer = FOUR_CHAR_CODE('look') }; /* these strings are NOT packed*/ struct LookupServerClass { AddrBlock theAddr; /* address of server*/ Str32 theName; /* name of server*/ Str32 theType; /* type of server*/ Str32 theZone; /* zone of server*/ }; typedef struct LookupServerClass LookupServerClass; typedef LookupServerClass * LookupServerPtr; /* ----------------------------------------------------------------------*/ /* PingServerClass*/ enum { kPingServer = FOUR_CHAR_CODE('ping') }; struct PingServerClass { long requestID; /* client requestID (for PFE AppleEvent)*/ long queueID; /* which queue we pinged*/ long maxUsers; /* max users for this server*/ long curUsers; /* current connected users*/ unsigned long queueState; /* state of queue (ie, stopped etc)*/ unsigned short statusType; /* driver status type (StatusRecord)*/ unsigned short statusID; /* driver status ID (StatusRecord)*/ long jobID; /* job ID for the currently printing file*/ Fixed percentage; /* percentage done*/ }; typedef struct PingServerClass PingServerClass; typedef PingServerClass * PingServerPtr; /* ----------------------------------------------------------------------*/ /* Printing AppleEvent Header*/ struct PrintingAppleEventHeader { long eventType; /* request or reply*/ long eventClass; /* what kind of event this is*/ long requestID; /* use TickCount on Request, passed back on reply*/ OSErr replyResult; /* result for replys*/ Str31 queueName; /* which printer sent this event*/ }; typedef struct PrintingAppleEventHeader PrintingAppleEventHeader; /* The AppleEvents used between printing and the Finder extension*/ struct PrintingAppleEvent { PrintingAppleEventHeader h; /* header, common to all events*/ union { ArbitraryClass arbitraryClass; SpoolFileClass spoolFile; SharePrinterClass sharePrinter; DeviceStatusClass deviceStatus; RemoteJobListClass remoteJobList; RemoteJobInfoClass remoteJobInfo; LookupServerClass lookupServer; PingServerClass pingServer; } u; }; typedef struct PrintingAppleEvent PrintingAppleEvent; /* AppleEvent structure for PFE events*/ struct PFEEvent { ResType extensionName; /* which extension to send to*/ PrintingAppleEvent d; /* the real data to send*/ }; typedef struct PFEEvent PFEEvent; /* ----------------------------------------------------------------------*/ #define kBasicPrintingEventSize (sizeof(PrintingAppleEventHeader) + sizeof(ResType)) #define kQueueEventSize (kBasicPrintingEventSize) #define kSpoolFileEventSize (kBasicPrintingEventSize+sizeof(SpoolFileClass)) #define kSharePrinterEventSize (kBasicPrintingEventSize+sizeof(SharePrinterClass)) #define kDeviceStatusEventSize (kBasicPrintingEventSize+sizeof(DeviceStatusClass)-kMaximumStatusLength) #define kRemoteJobListEventSize (kBasicPrintingEventSize+sizeof(RemoteJobListClass)-kJobIDMaxCount*sizeof(long)) #define kRemoteJobInfoEventSize (kBasicPrintingEventSize+sizeof(RemoteJobInfoClass)) #define kLookupServerEventSize (kBasicPrintingEventSize+sizeof(LookupServerClass)) #define kPingServerEventSize (kBasicPrintingEventSize+sizeof(PingServerClass)) /* ================================================================================ */ /* ******* GENERIC PROTOCOL CONSTANTS AND TYPES ********/ /* ------------------------- Protocol Constants -------------------------*/ enum { psMaxUserLen = 31, /* maximum user name length*/ psMaxPasswordLen = 31, /* maximum password length*/ kMaxPasswordLen = psMaxPasswordLen, /* maximum password length (compatibility)*/ psVersion1 = 0x0100, /* version 1.0*/ psCurrentVersion = psVersion1, /* "current" version*/ psNoCookies = -1, /* magic cookie placeholder*/ psFreshCookie = 0, /* magic cookie for current info*/ kStatusQuo = -1, /* no change to parameter (SetXInfo)*/ kBaseJobIDCount = 16 /* assume there will be this many jobs, or fewer*/ }; /* Use psNoLength for data channel packets ONLY where the sender does not know the length of the data when the send begins. Requires use of an implementation specific mechanism for tagging the end of the message or parameter. In ADSP the EOM bit is used. If there are any psNoLength parameters, they must be the only one in the message. */ enum { psNoLength = -1 /* length is unknown*/ }; enum { psDefaultQueue = 0, /* "main" queue for server; currently, the *only* queue*/ psDefaultDevice = 0 /* "main" device for queue; currently, the *only* device*/ }; /* DSP Attention data maximum = 570 bytes*/ #define psFragDataMax 512 #define psFragHdrSize sizeof(PSPHeader) #define psFragSize psFragDataMax + psFragHdrSize enum { psAttentionInterval = 18 /* ADSP Attention Interval*/ }; /* --------------------------- Protocol Types ---------------------------*/ struct IntlStr31 { short script; unsigned char data[32]; /* 31 bytes + length*/ }; typedef struct IntlStr31 IntlStr31; typedef long RandomNumber[8]; #define psRandNumSize sizeof(RandomNumber) struct PSPVersionList { short versionCount; /* one-based count*/ short versionList[1]; }; typedef struct PSPVersionList PSPVersionList; typedef PSPVersionList * PSPVersionListPtr; typedef PSPVersionListPtr * PSPVersionListHdl; typedef OSType UAMType; struct PSPUAMList { short uamCount; /* one-based count*/ UAMType uamList[1]; }; typedef struct PSPUAMList PSPUAMList; typedef PSPUAMList * PSPUAMListPtr; typedef PSPUAMListPtr * PSPUAMListHdl; /* -------------------------------- UAMs --------------------------------*/ enum { uamGuest = FOUR_CHAR_CODE('Any1'), /* guest access*/ uamZoneGuest = FOUR_CHAR_CODE('Zone'), /* zone membership*/ uamNoPassword = FOUR_CHAR_CODE('NoPW'), /* user name only*/ uamClearText = FOUR_CHAR_CODE('ClrT'), /* password in cleartext*/ uamRandNum = FOUR_CHAR_CODE('RndX'), /* random number exhange*/ uamTwoWay = FOUR_CHAR_CODE('2Way') /* two-way random number exchange*/ }; /* -------------------------- Device Info Types --------------------------*/ enum { psDeviceInfoList = FOUR_CHAR_CODE('????') }; /* -------------------------- Parameter Labels --------------------------*/ enum { psSpoolParameter = FOUR_CHAR_CODE('spol'), psImageParameter = FOUR_CHAR_CODE('imag'), psFontParameter = FOUR_CHAR_CODE('font'), psExtensionParameter = FOUR_CHAR_CODE('ext ') }; /* ----------------------------- Bit Fields ----------------------------*/ enum { psPassword = bit0, psMagicCookies = bit1 }; /* all other bits are reserved, and must be zero*/ enum { psQueueActive = bit0, psQueueBusy = bit1 }; /* all other bits are reserved, and must be zero*/ enum { privNone = noBit, privConnect = bit0, /* client may connect to the server*/ privChangePassword = bit1, /* client may change user’s password*/ privSendJob = bit2, /* client may submit (and abort) jobs*/ privGetOwnJobInfo = bit3, /* client may request information about user jobs*/ privSetOwnJobInfo = bit4, /* client may change infomation about user jobs*/ privDeleteOwnJob = bit5, /* client may delete user jobs*/ privGetGroupJobInfo = bit6, /* client may request information about group jobs*/ privSetGroupJobInfo = bit7, /* client may change infomation about group jobs*/ privDeleteGroupJob = bit8, /* client may delete group jobs*/ privGetOtherJobInfo = bit9, /* client may request information about other jobs*/ privSetOtherJobInfo = bit10, /* client may change infomation about other jobs*/ privDeleteOtherJob = bit11, /* client may delete other jobs*/ privSetQueueState = bit12, /* client may start/stop queue*/ privSetQueueInfo = bit13 /* client may change queue config info*/ }; /* all other bits are reserved, and must be zero*/ /* Superuser has all priv's*/ enum { privAll = privConnect + privChangePassword + privSendJob + privGetOwnJobInfo + privSetOwnJobInfo + privDeleteOwnJob + privGetGroupJobInfo + privSetGroupJobInfo + privDeleteGroupJob + privGetOtherJobInfo + privSetOtherJobInfo + privDeleteOtherJob + privSetQueueState, privMayPrint = privConnect + privSendJob + privGetOwnJobInfo + privSetOwnJobInfo + privDeleteOwnJob, privSeeJobs = privConnect + privGetGroupJobInfo + privGetOtherJobInfo, privChangeJobs = privConnect + privSetGroupJobInfo + privDeleteGroupJob + privSetOtherJobInfo + privDeleteOtherJob, privChangePrinter = privConnect + privSetQueueState }; /* ---------------------------- Result Codes ----------------------------*/ enum { /* server not-quite-errors*/ psNotDone = 2, /* first fragment of multi-fragment message*/ psNoChange = 1, /* magic cookie indicates no change*/ psNoErr = 0, /* no error*/ /* API errors*/ psNoServer = -6000, /* can't find server*/ psNoSession = -6001, /* ADSP session died*/ /* server errors*/ psShutDown = -6002, /* server is shutting down*/ psServerBusy = -6003, /* server cannot process request*/ psSnafu = -6004, /* server internal error*/ psSessInUse = -6005, /* session is in use*/ psBadUAM = -6006, /* UAM is not valid*/ psNoSuchUser = -6007, /* user name is not valid*/ psNeedPswd = -6008, /* password required*/ psBadPswd = -6009, /* password is not valid*/ psNoGuest = -6010, /* "We don't serve their kind, here."*/ psNoZoneGuest = -6011, /* "We don't serve their kind, here."*/ psWrongZone = -6012, /* Sorry, members only.*/ psNotYet = -6013, /* please submit a Validate request*/ psNoAuthInProg = -6014, /* Validatation without Authentication*/ psBadAuthID = -6015, /* authID is not valid*/ psNoPriv = -6016, /* no privilege for attempted operation*/ psBadCmd = -6017, /* APSP command is not valid*/ psBadParm = -6018, /* APSP parameter is not valid*/ psBadQueueID = -6019, /* queueID is not valid*/ psBadDeviceID = -6020, /* deviceID is not valid*/ psBadJobID = -6021, /* jobID is not valid*/ psNoInfo = -6022, /* no information available*/ psBadInfo = -6023, /* set info is not valid*/ psSorry = -6099 /* function not supported by server*/ }; /* -------------------------- Protocol Commands -------------------------*/ enum { psCloseSession = 512, /* 0x0200 privNone*/ psCloseSessionReply = 513, /* 0x0201*/ psAuthenticate = 514, /* 0x0202 privNone*/ psAuthenticateReply = 515, /* 0x0203*/ psValidate = 516, /* 0x0204 privNone*/ psValidateReply = 517, /* 0x0205*/ psChangePassword = 518, /* 0x0206 privChangePassword*/ psChangePasswordReply = 519, /* 0x0207*/ psSendJob = 520, /* 0x0208 privSendJob*/ psSendJobReply = 521, /* 0x0209*/ psAbortJob = 522, /* 0x020A privSendJob*/ psAbortJobReply = 523, /* 0x020B*/ psDeleteJob = 524, /* 0x020C privDeleteXJob*/ psDeleteJobReply = 525, /* 0x020D*/ psGetServerInfo = 526, /* 0x020E privNone*/ psGetServerInfoReply = 527, /* 0x020F*/ psGetQueueList = 528, /* 0x0210 privNone*/ psGetQueueListReply = 529, /* 0x0211*/ psGetQueueInfo = 530, /* 0x0212 privNone*/ psGetQueueInfoReply = 531, /* 0x0213*/ psSetQueueInfo = 532, /* 0x0214 privSetQueueInfo*/ psSetQueueInfoReply = 533, /* 0x0215*/ psGetQueueState = 534, /* 0x0216 privNone*/ psGetQueueStateReply = 535, /* 0x0217*/ psSetQueueState = 536, /* 0x0218 privSetQueueState*/ psSetQueueStateReply = 537, /* 0x0219*/ psGetDeviceList = 538, /* 0x021A privNone*/ psGetDeviceListReply = 539, /* 0x021B*/ psGetDeviceInfoList = 540, /* 0x021C privNone*/ psGetDeviceInfoListReply = 541, /* 0x021D*/ psGetDeviceInfo = 542, /* 0x021E privNone*/ psGetDeviceInfoReply = 543, /* 0x021F*/ psGetDeviceStatus = 544, /* 0x0222 privGetXJobInfo*/ psGetDeviceStatusReply = 545, /* 0x0223*/ psSetDeviceStatus = 546, /* 0x0224 privSetXJobInfo*/ psSetDeviceStatusReply = 547, /* 0x0225*/ psGetJobList = 548, /* 0x0226 privConnect*/ psGetJobListReply = 549, /* 0x0227*/ psGetJobInfo = 550, /* 0x0228 privGetXJobInfo*/ psGetJobInfoReply = 551, /* 0x0229*/ psSetJobInfo = 552, /* 0x023A privSetXJobInfo*/ psSetJobInfoReply = 553, /* 0x023B*/ psRequirements = 1024, /* 0x0400 client: list of imaging requirements*/ psNeedResources = 1025, /* 0x0401 server: list of resources needed for imaging*/ psResources = 1026, /* 0x0402 client: resources for imaging*/ psSpool = 1027, /* 0x0403 client: spool data*/ psImage = 1028 /* 0x0404 client: image data*/ }; /* --------------------------- Message Formats --------------------------*/ struct PSPHeader { short command; short version; short msgLength; short result; }; typedef struct PSPHeader PSPHeader; typedef PSPHeader * PSPHeaderPtr; typedef PSPHeaderPtr * PSPHeaderHdl; struct PSPParameter { unsigned long pLabel; /* parameter label*/ long pID; /* parameter ID, hi word = attributes, lo word = id*/ long pLength; /* parameter length*/ Str255 pName; /* parameter name; null-padded to word boundary*/ unsigned char data[16]; /* packed after name, null padded to word boundary*/ }; typedef struct PSPParameter PSPParameter; typedef PSPParameter * PSPParameterPtr; typedef PSPParameterPtr * PSPParameterHdl; /* ------------------------- Session Handling --------------------------*/ /* Close Session request and reply have no data*/ typedef Ptr * PSPCloseSessionPtr; typedef PSPCloseSessionPtr * PSPCloseSessionHdl; typedef Ptr * PSPCloseSessionReplyPtr; typedef PSPCloseSessionReplyPtr * PSPCloseSessionReplyHdl; /* --------------------------- Authentication --------------------------*/ /* Note: All PSPAuthenticate parameters are required, even if they are null. See PSP Specification for more information */ struct PSPAuthenticate { UAMType uam; Str31 userName; /* user name, packed and padded to word boundary*/ Str31 password; /* password, packed/padded*/ Str32 nbpName; /* nbp name registered on client node, packed/padded*/ Str32 nbpType; /* nbp type registered on client node, packed/padded*/ }; typedef struct PSPAuthenticate PSPAuthenticate; typedef PSPAuthenticate * PSPAuthenticatePtr; typedef PSPAuthenticatePtr * PSPAuthenticateHdl; struct PSPAuthenticateReply { unsigned long privs; /* privileges granted, if any*/ long authID; /* only if psNotYet, uamRandNum and uamTwoWay*/ RandomNumber randNum; /* only if psNotYet, uamRandNum and uamTwoWay*/ }; typedef struct PSPAuthenticateReply PSPAuthenticateReply; typedef PSPAuthenticateReply * PSPAuthenticateReplyPtr; typedef PSPAuthenticateReplyPtr * PSPAuthenticateReplyHdl; struct PSPValidate { long authID; RandomNumber encryptedPswd; /* user's idea of password*/ RandomNumber randNum; /* uamTwoWay only*/ }; typedef struct PSPValidate PSPValidate; typedef PSPValidate * PSPValidatePtr; typedef PSPValidatePtr * PSPValidateHdl; struct PSPValidateReply { unsigned long privs; /* privileges granted, if any*/ long authID; RandomNumber encryptedPswd; /* uamTwoWay only*/ }; typedef struct PSPValidateReply PSPValidateReply; typedef PSPValidateReply * PSPValidateReplyPtr; typedef PSPValidateReplyPtr * PSPValidateReplyHdl; /* PSPChangePassword Note: if uamRandNum or uamTwoWay, then all 32 bytes of old/new password must be present */ struct PSPChangePassword { UAMType uam; Str31 userName; /* null padded to word*/ Str31 oldPassword; /* packed after userName, null padded to word*/ Str31 newPassword; /* packed after oldPassword, null padded to word*/ }; typedef struct PSPChangePassword PSPChangePassword; typedef PSPChangePassword * PSPChangePasswordPtr; typedef PSPChangePasswordPtr * PSPChangePasswordHdl; typedef Ptr * PSPChangePasswordReplyPtr; typedef PSPChangePasswordReplyPtr * PSPChangePasswordReplyHdl; /* --------------------------- Job Submission --------------------------*/ struct PSPSendJob { short imageLocally; /* actually a boolean, 0=FALSE, 1=TRUE*/ long driverVers; long tackleboxVers; long macType; }; typedef struct PSPSendJob PSPSendJob; typedef PSPSendJob * PSPSendJobPtr; typedef PSPSendJobPtr * PSPSendJobHdl; struct PSPSendJobReply { short imageLocally; /* actually a boolean, 0=FALSE, 1=TRUE*/ long queueID; long deviceID; long jobID; }; typedef struct PSPSendJobReply PSPSendJobReply; typedef PSPSendJobReply * PSPSendJobReplyPtr; typedef PSPSendJobReplyPtr * PSPSendJobReplyHdl; struct PSPAbortJob { long queueID; long deviceID; long jobID; }; typedef struct PSPAbortJob PSPAbortJob; typedef PSPAbortJob * PSPAbortJobPtr; typedef PSPAbortJobPtr * PSPAbortJobHdl; struct PSPAbortJobReply { long queueID; long deviceID; long jobID; }; typedef struct PSPAbortJobReply PSPAbortJobReply; typedef PSPAbortJobReply * PSPAbortJobReplyPtr; typedef PSPAbortJobReplyPtr * PSPAbortJobReplyHdl; struct PSPDeleteJob { long queueID; long deviceID; long jobID; }; typedef struct PSPDeleteJob PSPDeleteJob; typedef PSPDeleteJob * PSPDeleteJobPtr; typedef PSPDeleteJobPtr * PSPDeleteJobHdl; struct PSPDeleteJobReply { long queueID; long deviceID; long jobID; }; typedef struct PSPDeleteJobReply PSPDeleteJobReply; typedef PSPDeleteJobReply * PSPDeleteJobReplyPtr; typedef PSPDeleteJobReplyPtr * PSPDeleteJobReplyHdl; /* --------------------------- Server Commands --------------------------*/ struct PSPGetServerInfo { long magicCookie; /* psNoCookies if not supported*/ }; typedef struct PSPGetServerInfo PSPGetServerInfo; typedef PSPGetServerInfo * PSPGetServerInfoPtr; typedef PSPGetServerInfoPtr * PSPGetServerInfoHdl; struct PSPGetServerInfoReply { long magicCookie; /* psNoCookies if not supported*/ short flags; /* bit field, see above*/ short versionCount; short versions[1]; short uamCount; UAMType uams[1]; IntlStr31 serverName; }; typedef struct PSPGetServerInfoReply PSPGetServerInfoReply; typedef PSPGetServerInfoReply * PSPGetServerInfoReplyPtr; typedef PSPGetServerInfoReplyPtr * PSPGetServerInfoReplyHdl; /* --------------------------- Queue Commands --------------------------*/ struct PSPGetQueueList { long magicCookie; /* psNoCookies if not supported*/ }; typedef struct PSPGetQueueList PSPGetQueueList; typedef PSPGetQueueList * PSPGetQueueListPtr; typedef PSPGetQueueListPtr * PSPGetQueueListHdl; struct PSPGetQueueListReply { long magicCookie; /* psNoCookies if not supported*/ long count; long queueIDs[1]; }; typedef struct PSPGetQueueListReply PSPGetQueueListReply; typedef PSPGetQueueListReply * PSPGetQueueListReplyPtr; typedef PSPGetQueueListReplyPtr * PSPGetQueueListReplyHdl; struct PSPGetQueueInfo { long queueID; long magicCookie; /* psNoCookies if not supported*/ }; typedef struct PSPGetQueueInfo PSPGetQueueInfo; typedef PSPGetQueueInfo * PSPGetQueueInfoPtr; typedef PSPGetQueueInfoPtr * PSPGetQueueInfoHdl; struct PSPGetQueueInfoReply { long queueID; long magicCookie; /* psNoCookies if not supported*/ char queueInfo[16]; /* ??? not defined*/ }; typedef struct PSPGetQueueInfoReply PSPGetQueueInfoReply; typedef PSPGetQueueInfoReply * PSPGetQueueInfoReplyPtr; typedef PSPGetQueueInfoReplyPtr * PSPGetQueueInfoReplyHdl; struct PSPSetQueueInfo { long queueID; long magicCookie; /* psNoCookies if not supported*/ char queueInfo[16]; /* ??? not defined*/ }; typedef struct PSPSetQueueInfo PSPSetQueueInfo; typedef PSPSetQueueInfo * PSPSetQueueInfoPtr; typedef PSPSetQueueInfoPtr * PSPSetQueueInfoHdl; struct PSPSetQueueInfoReply { long queueID; long magicCookie; /* psNoCookies if not supported*/ }; typedef struct PSPSetQueueInfoReply PSPSetQueueInfoReply; typedef PSPSetQueueInfoReply * PSPSetQueueInfoReplyPtr; typedef PSPSetQueueInfoReplyPtr * PSPSetQueueInfoReplyHdl; struct PSPGetQueueState { long queueID; long magicCookie; /* psNoCookies if not supported*/ }; typedef struct PSPGetQueueState PSPGetQueueState; typedef PSPGetQueueState * PSPGetQueueStatePtr; typedef PSPGetQueueStatePtr * PSPGetQueueStateHdl; struct PSPGetQueueStateReply { long queueID; long magicCookie; /* psNoCookies if not supported*/ unsigned long queueState; /* see bitfield above*/ }; typedef struct PSPGetQueueStateReply PSPGetQueueStateReply; typedef PSPGetQueueStateReply * PSPGetQueueStateReplyPtr; typedef PSPGetQueueStateReplyPtr * PSPGetQueueStateReplyHdl; struct PSPSetQueueState { long queueID; long magicCookie; /* psNoCookies if not supported*/ unsigned long queueState; /* see bitfield above*/ }; typedef struct PSPSetQueueState PSPSetQueueState; typedef PSPSetQueueState * PSPSetQueueStatePtr; typedef PSPSetQueueStatePtr * PSPSetQueueStateHdl; struct PSPSetQueueStateReply { long queueID; long magicCookie; /* psNoCookies if not supported*/ }; typedef struct PSPSetQueueStateReply PSPSetQueueStateReply; typedef PSPSetQueueStateReply * PSPSetQueueStateReplyPtr; typedef PSPSetQueueStateReplyPtr * PSPSetQueueStateReplyHdl; /* --------------------------- Device Commands --------------------------*/ struct PSPGetDeviceList { long queueID; long magicCookie; /* psNoCookies if not supported*/ }; typedef struct PSPGetDeviceList PSPGetDeviceList; typedef PSPGetDeviceList * PSPGetDeviceListPtr; typedef PSPGetDeviceListPtr * PSPGetDeviceListHdl; struct PSPGetDeviceListReply { long queueID; long magicCookie; /* psNoCookies if not supported*/ long idCount; long deviceIDs[1]; }; typedef struct PSPGetDeviceListReply PSPGetDeviceListReply; typedef PSPGetDeviceListReply * PSPGetDeviceListReplyPtr; typedef PSPGetDeviceListReplyPtr * PSPGetDeviceListReplyHdl; struct PSPGetDeviceInfoList { long queueID; long deviceID; long magicCookie; /* psNoCookies if not supported*/ }; typedef struct PSPGetDeviceInfoList PSPGetDeviceInfoList; typedef PSPGetDeviceInfoList * PSPGetDeviceInfoListPtr; typedef PSPGetDeviceInfoListPtr * PSPGetDeviceInfoListHdl; struct PSPDevInfoTuple { unsigned long infoType; long infoID; }; typedef struct PSPDevInfoTuple PSPDevInfoTuple; struct PSPGetDeviceInfoListReply { long queueID; long deviceID; long magicCookie; /* psNoCookies if not supported*/ long infoCount; PSPDevInfoTuple infoList[1]; }; typedef struct PSPGetDeviceInfoListReply PSPGetDeviceInfoListReply; typedef PSPGetDeviceInfoListReply * PSPGetDeviceInfoListReplyPtr; typedef PSPGetDeviceInfoListReplyPtr * PSPGetDeviceInfoListReplyHdl; struct PSPGetDeviceInfo { long queueID; long deviceID; unsigned long infoType; /* info type we would like*/ long infoID; /* info id we would like*/ long magicCookie; /* psNoCookies if not supported*/ }; typedef struct PSPGetDeviceInfo PSPGetDeviceInfo; typedef PSPGetDeviceInfo * PSPGetDeviceInfoPtr; typedef PSPGetDeviceInfoPtr * PSPGetDeviceInfoHdl; struct PSPGetDeviceInfoReply { long queueID; long deviceID; long magicCookie; /* psNoCookies if not supported*/ PSPParameter devInfo; /* arbitrary*/ }; typedef struct PSPGetDeviceInfoReply PSPGetDeviceInfoReply; typedef PSPGetDeviceInfoReply * PSPGetDeviceInfoReplyPtr; typedef PSPGetDeviceInfoReplyPtr * PSPGetDeviceInfoReplyHdl; struct PSPGetDeviceStatus { long queueID; long deviceID; long magicCookie; }; typedef struct PSPGetDeviceStatus PSPGetDeviceStatus; typedef PSPGetDeviceStatus * PSPGetDeviceStatusPtr; typedef PSPGetDeviceStatusPtr * PSPGetDeviceStatusHdl; struct PSPGetDeviceStatusReply { long queueID; long deviceID; /* device job is printing on*/ long magicCookie; /* psNoCookies if not supported*/ long jobID; /* currently printing job*/ unsigned long queueState; /* state of queue (ie, stopped etc)*/ long userCount; /* # users on this server*/ long page; /* which page is currently printing*/ Fixed percentage; /* percentage complete*/ long statusSize; /* size of status info*/ char status[512]; /* device-supplied info about job*/ }; typedef struct PSPGetDeviceStatusReply PSPGetDeviceStatusReply; typedef PSPGetDeviceStatusReply * PSPGetDeviceStatusReplyPtr; typedef PSPGetDeviceStatusReplyPtr * PSPGetDeviceStatusReplyHdl; struct PSPSetDeviceStatus { long queueID; long deviceID; long magicCookie; /* psNoCookies if not supported*/ long jobID; /* which job is currently printing*/ long statusSize; /* size of status info*/ char status[512]; /* device-supplied info about job*/ }; typedef struct PSPSetDeviceStatus PSPSetDeviceStatus; typedef PSPSetDeviceStatus * PSPSetDeviceStatusPtr; typedef PSPSetDeviceStatusPtr * PSPSetDeviceStatusHdl; struct PSPSetDeviceStatusReply { long queueID; long deviceID; long magicCookie; }; typedef struct PSPSetDeviceStatusReply PSPSetDeviceStatusReply; typedef PSPSetDeviceStatusReply * PSPSetDeviceStatusReplyPtr; typedef PSPSetDeviceStatusReplyPtr * PSPSetDeviceStatusReplyHdl; /* --------------------------- Job Commands --------------------------*/ struct PSPGetJobList { long queueID; long deviceID; long magicCookie; /* psNoCookies if not supported*/ }; typedef struct PSPGetJobList PSPGetJobList; typedef PSPGetJobList * PSPGetJobListPtr; typedef PSPGetJobListPtr * PSPGetJobListHdl; struct PSPGetJobListReply { long queueID; long deviceID; long magicCookie; /* psNoCookies if not supported*/ long idCount; long jobIDs[16]; }; typedef struct PSPGetJobListReply PSPGetJobListReply; typedef PSPGetJobListReply * PSPGetJobListReplyPtr; typedef PSPGetJobListReplyPtr * PSPGetJobListReplyHdl; struct PSPGetJobInfo { long queueID; /* target queue*/ long deviceID; long jobID; /* target job*/ long magicCookie; /* psNoCookies if not supported*/ }; typedef struct PSPGetJobInfo PSPGetJobInfo; typedef PSPGetJobInfo * PSPGetJobInfoPtr; typedef PSPGetJobInfoPtr * PSPGetJobInfoHdl; struct PSPJobName { /* these strings are packed and word-aligned*/ Str31 appName; /* application that created this job*/ Str31 documentName; /* name of document being printed*/ Str31 userName; /* user who submitted the job*/ }; typedef struct PSPJobName PSPJobName; typedef PSPJobName * PSPJobNamePtr; typedef PSPJobNamePtr * PSPJobNameHdl; struct PSPGetJobInfoReply { long queueID; /* target queue*/ long deviceID; /* target device*/ long jobID; /* target job*/ long magicCookie; /* psNoCookies if not supported*/ long priority; /* job priority*/ unsigned long timeToPrint; /* absolute time of job*/ long jobTimeout; /* in ticks*/ long firstPageToPrint; /* start printing from this page*/ long jobAlert; /* when to alert user*/ long numPages; /* pages of job*/ long numCopies; /* number of copies being printed*/ unsigned long jobType; /* type of job*/ JobName s; /* job name information*/ }; typedef struct PSPGetJobInfoReply PSPGetJobInfoReply; typedef PSPGetJobInfoReply * PSPGetJobInfoReplyPtr; typedef PSPGetJobInfoReplyPtr * PSPGetJobInfoReplyHdl; struct PSPSetJobInfo { long queueID; /* target queue*/ long deviceID; /* target device*/ long jobID; /* target job*/ long magicCookie; /* psNoCookies if not supported*/ long priority; /* new job priority*/ unsigned long timeToPrint; /* new absolute time of job*/ long jobTimeout; /* new timeout in ticks*/ long firstPageToPrint; /* start printing from this page*/ long numCopies; /* number of copies to print*/ long jobAlert; /* new place to alert user*/ }; typedef struct PSPSetJobInfo PSPSetJobInfo; typedef PSPSetJobInfo * PSPSetJobInfoPtr; typedef PSPSetJobInfoPtr * PSPSetJobInfoHdl; struct PSPSetJobInfoReply { long queueID; /* target queue*/ long deviceID; /* target device*/ long jobID; /* target job*/ long magicCookie; /* psNoCookies if not supported*/ }; typedef struct PSPSetJobInfoReply PSPSetJobInfoReply; typedef PSPSetJobInfoReply * PSPSetJobInfoReplyPtr; typedef PSPSetJobInfoReplyPtr * PSPSetJobInfoReplyHdl; /* --------------------------- Data Channel Formats --------------------------*/ struct PSPDataHeader { short command; OSErr result; long count; long msgLen; }; typedef struct PSPDataHeader PSPDataHeader; typedef PSPDataHeader * PSPDataHeaderPtr; typedef PSPDataHeaderPtr * PSPDataHeaderHdl; struct PSPData { PSPDataHeader hdr; PSPParameter parms[1]; }; typedef struct PSPData PSPData; typedef PSPData * PSPDataPtr; typedef PSPDataPtr * PSPDataHdl; struct PSPEndOfJobData { short command; /* always psSpool*/ OSErr result; /* the error*/ long count; /* always 0*/ long msgLen; /* always sizeof(PSPEndOfJobData) */ }; typedef struct PSPEndOfJobData PSPEndOfJobData; typedef PSPEndOfJobData * PSPEndOfJobDataPtr; typedef PSPEndOfJobDataPtr * PSPEndOfJobDataHdl; struct PSPExtensionData { OSType creatorType; /* type of the extension*/ long version; /* version of the extension*/ long flags; /* flags (where to use) for the extension*/ }; typedef struct PSPExtensionData PSPExtensionData; typedef PSPExtensionData * PSPExtensionDataPtr; /* ================================================================================ */ /* ******* SHARED APPLETALK CONSTANTS AND TYPES ********/ enum { noConnection = psNoServer, /* no connection open*/ connectionDied = psNoSession, /* lost contact with remote end*/ connectionBusy = psSessInUse, /* channel needed is busy*/ privViolation = psNoPriv, /* user has no priv for command*/ serverIsFake = psSorry - 1 /* server doesn't really know our password - liar!*/ }; /* for SACloseConnection*/ enum { kAbort = true, /* abort pending I/O*/ kDontAbort = false, /* don't abort pending I/O*/ kRemove = true, /* call dspRemove*/ kDontRemove = false, /* call dspClose*/ kJustClose = false /* call dspClose*/ }; /* These constants control the size of connection buffers*/ enum { dspQSize = 1536, /* Size of internal queues (too big? too small?)*/ dataMax = 1024, /* Size of a data send/receive (max)*/ attnMax = attnBufSize /* Size of a single attention fragment (max)*/ }; /* Idler Proc for I/O calls*/ typedef CALLBACK_API_C( OSErr , WaitProcPtr )(void ); typedef STACK_UPP_TYPE(WaitProcPtr) WaitUPP; enum { uppWaitProcInfo = 0x00000021 }; /* 2_bytes Func() */ #define NewWaitProc(userRoutine) (WaitUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppWaitProcInfo, GetCurrentArchitecture()) #define CallWaitProc(userRoutine) CALL_ZERO_PARAMETER_UPP((userRoutine), uppWaitProcInfo) /* Record used for sending file info across the network*/ struct FileInfoRec { FInfo ioFlFndrInfo; unsigned long ioFlCrDat; unsigned long ioFlMdDat; }; typedef struct FileInfoRec FileInfoRec; typedef FileInfoRec * FileInfoPtr; /* DoToFile proc for SAWalkFolder return true to keep walking, false to stop */ typedef CALLBACK_API_C( Boolean , DoToFileProcPtr )(HParmBlkPtr pb, long foo, long bar); typedef STACK_UPP_TYPE(DoToFileProcPtr) DoToFileUPP; enum { uppDoToFileProcInfo = 0x00000FD1 }; /* 1_byte Func(4_bytes, 4_bytes, 4_bytes) */ #define NewDoToFileProc(userRoutine) (DoToFileUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppDoToFileProcInfo, GetCurrentArchitecture()) #define CallDoToFileProc(userRoutine, pb, foo, bar) CALL_THREE_PARAMETER_UPP((userRoutine), uppDoToFileProcInfo, (pb), (foo), (bar)) struct NetRange { unsigned short loNet; unsigned short hiNet; }; typedef struct NetRange NetRange; typedef NetRange * NetRangePtr; typedef NetRangePtr * NetRangeHdl; /* ------------------------- PSP Parameter Block ------------------------*/ struct PSPParamBlock { DSPParamBlock dspPB; /* dsp parameter block*/ Ptr cPtr; /* pointer to owning connection*/ }; typedef struct PSPParamBlock PSPParamBlock; typedef PSPParamBlock * PSPPBPtr; /* -------------------------- Connection Record -------------------------*/ /* The connection record is all of the data needed for one end of a connection between the server and the client, note that both client and server actually have their own version of this record, with additional fields added to the end. */ struct ConnectionRecord { TRCCB theCCB; /* Connection control block for this end*/ short dspRefNum; /* The ADSP refNum*/ short theCCBRefNum; /* RefNum of the CCB*/ char sendBuf[1536]; /* ADSP-owned send queue*/ char recvBuf[1536]; /* ADSP-owned receive queue*/ char attnBuf[570]; /* ADSP-owned attention queue*/ Boolean locked; /* true if (completion) segment is locked*/ char pad1; PSPParamBlock dataPB; /* pb for send*/ char dataBuffer[1024]; /* double-buffer for send*/ Boolean dataBusy; /* data buffer is active*/ char pad2; Handle recvBuffer; /* double buffer for attn in*/ char * recvFragPtr; /* place to put new frags*/ Size recvBufferSize; /* current size of recvBuffer*/ Size recvBufferDelta; /* resize recvBuffer by this much*/ Boolean recvFrags; /* TRUE when handling a multi-frag msg*/ char pad3; PSPParamBlock attnPB; /* pb for attn (send)*/ Handle sendBuffer; /* double buffer for attn in*/ char * sendFragPtr; /* place to put new frags*/ Size sendBufferSize; /* current size of sendBuffer*/ Size sendBufferDelta; /* amount sent so far*/ Boolean sendFrags; /* sendBuffer is in use*/ Boolean attnBusy; /* sendBuffer is in use*/ }; typedef struct ConnectionRecord ConnectionRecord; typedef ConnectionRecord * ConnectionPtr; /* Definition of a network address*/ struct AddrBlk { short aNet; /* network number*/ char aNode; /* node number*/ char aSocket; /* socket number*/ }; typedef struct AddrBlk AddrBlk; /* PAP Driver Protocol Specific Info.*/ struct PAPSpecData { ResType commType; /* communications type ('PPTL')*/ unsigned short flowQuantum; /* Number of 512 byte buffers allocated by PAP for read operations*/ unsigned char printerName[99]; /* Name of the printer to connect to*/ char pad; Ptr openStatusBuff; /* Pointer to status buff used during open requests*/ Ptr eofReadByte; /* Location to store EOF byte during read operation*/ Ptr eofWriteByte; /* Pointer to EOF byte to use on write operations*/ AddrBlk lastNetAddr; /* Most recent network address of the printer*/ }; typedef struct PAPSpecData PAPSpecData; typedef PAPSpecData * TPPAPSpecData; typedef TPPAPSpecData * THPAPSpecData; /* Function pointer for device acquire function*/ typedef CALLBACK_API_C( short , SCSIAcqIntfProcPtr )(short *scsiDeviceNum, short scsiBusNum); typedef STACK_UPP_TYPE(SCSIAcqIntfProcPtr) SCSIAcqIntfUPP; enum { uppSCSIAcqIntfProcInfo = 0x000002E1 }; /* 2_bytes Func(4_bytes, 2_bytes) */ #define NewSCSIAcqIntfProc(userRoutine) (SCSIAcqIntfUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppSCSIAcqIntfProcInfo, GetCurrentArchitecture()) #define CallSCSIAcqIntfProc(userRoutine, scsiDeviceNum, scsiBusNum) CALL_TWO_PARAMETER_UPP((userRoutine), uppSCSIAcqIntfProcInfo, (scsiDeviceNum), (scsiBusNum)) /* Function pointer for device release function*/ typedef CALLBACK_API_C( short , SCSIRelIntfProcPtr )(short scsiDeviceNum, short scsiBusNum); typedef STACK_UPP_TYPE(SCSIRelIntfProcPtr) SCSIRelIntfUPP; enum { uppSCSIRelIntfProcInfo = 0x000002A1 }; /* 2_bytes Func(2_bytes, 2_bytes) */ #define NewSCSIRelIntfProc(userRoutine) (SCSIRelIntfUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppSCSIRelIntfProcInfo, GetCurrentArchitecture()) #define CallSCSIRelIntfProc(userRoutine, scsiDeviceNum, scsiBusNum) CALL_TWO_PARAMETER_UPP((userRoutine), uppSCSIRelIntfProcInfo, (scsiDeviceNum), (scsiBusNum)) /* SCSI I/O Driver, Protocol Specific Info.*/ struct SCSISpecData { ResType commType; /* communications type ('sPTL')*/ SCSIRelIntfUPP releaseDevice; /* Pointer to C routine that can release SCSI device, can be nil*/ short scsiIOAttributes; /* SCSI I/O attributes applicable to data xfers*/ short * statusByte; /* Location to store status byte from data xfer operation, can be nil*/ short scsiBus; /* Number of scsi bus to which device is attached (0 = motherboard; applies to open connection call only).*/ short deviceNum; /* Number of scsi device to open connection to (applies to open connection call only).*/ long bytesPerChunk; /* 0 => ignored; > 0 => break data transfer into chunks of this size (at SCSI TIB level)*/ SCSIAcqIntfUPP acquireDevice; /* Pointer to C routine that can acquire SCSI device, nil == use info below in standard routine*/ short deviceKind; /* device kind to look for in reponse*/ short minLength; /* minimum additional data to get in response*/ short offsetStart; /* offset from start of returned data to look at*/ Str255 searchString; /* string to search for in the response*/ }; typedef struct SCSISpecData SCSISpecData; typedef SCSISpecData * TPSCSISpecData; typedef TPSCSISpecData * THSCSISpecData; /* Serial I/O Driver Protocol Specific Info.*/ struct SerialSpecData { ResType commType; /* communications type ('SPTL')*/ short outBaudRate; /* Baud rate setting for serial output port*/ short outParity; /* Parity setting for serial output port*/ short outStopBits; /* Stop bits setting for serial output port*/ short outDataBits; /* Data bits setting for serial output port*/ SerShk outHandShaking; /* Hardware handshaking spec. for serial output port*/ short inBaudRate; /* Baud rate setting for serial input port*/ short inParity; /* Parity setting for serial input port*/ short inStopBits; /* Stop bits setting for serial input port*/ short inDataBits; /* Data bits setting for serial input port*/ SerShk inHandShaking; /* Hardware handshaking spec. for serial input port*/ unsigned short inputBuffSz; /* Input serial port buffer size*/ Str63 inPortName; /* Specifies name of serial input driver to open (Pascal string)*/ Str63 outPortName; /* Specifies name of serial output driver to open (Pascal string)*/ }; typedef struct SerialSpecData SerialSpecData; typedef SerialSpecData * TPSerialSpecData; typedef TPSerialSpecData * THSerialSpecData; /* The 'over' resource*/ struct OverrideResourceEntry { short messageID; /* Message being overridden */ long dispatch1; /* Placeholder for first dispatch selector */ long dispatch2; /* Placeholder for second dispatch selector */ }; typedef struct OverrideResourceEntry OverrideResourceEntry; struct OverrideResource { short numOverrides; /* Number of overrides */ OverrideResourceEntry overrides[1]; /* The overrides */ }; typedef struct OverrideResource OverrideResource; typedef OverrideResource * OverrideResourcePtr; typedef OverrideResourcePtr * OverrideResourceHandle; /* compatibility management types...*/ /* values for compatibility flags - PrGluePatch.a has dependency!*/ enum { kDontCacheAllocations = (long)0x80000000, /* some apps (MPW) clean up after printing*/ kAlwaysDoPrClose = 0x40000000, /* kDontCacheAllocations implies this as well*/ kDontPatchExitToShell = 0x20000000, /* if app cleans up after printing, but doesn't call PrClose through trap*/ kDoShowpageBefRestore = 0x10000000, /* if the app generates all of its own PostScript and uses frame device operators*/ kDontTranlateAtDeviceRes = 0x08000000, /* don't perform translation at device resolution*/ kPSIgnoreTransformList = 0x04000000, /* for some apps that generate all of its own PostScript, ignore transforms and don't do gsave/grestores.*/ kPSUseMac8bitEncoding = 0x02000000, /* For Apps that that generate all of its own PostScript, download fonts using mac 8 bit encoding - download all glyphs in encoding*/ kPSIncludeLaserPrep = 0x01000000, /* For Apps that that use LaserPrep*/ kIgnorePSPicComments = 0x00800000, /* For Apps that have bogus PS comments*/ kMaintainColorAcrossRestores = 0x00400000, /* For Apps that depend on the color staying the same after a PicComment*/ kImplementLW8PrGeneral = 0x00200000 /* For apps that depend upon LaserWriter 8.x functionality*/ }; /* embed flags in struct for expandibility*/ struct TCompatibilityFlags { long flags1; }; typedef struct TCompatibilityFlags TCompatibilityFlags; /* for extension list management calls....*/ typedef struct OpaqueExtensionList* ExtensionList; /* bitfields for flags field in TExtensionDeviceInfo structure*/ enum { extensionActiveMask = 0x00000001, changePageAtRenderPageMask = 0x08000000, changePageAtImagePageMask = 0x10000000, changePageAtDespoolPageMask = 0x20000000, needDeviceStatusMask = 0x40000000, executeDuringImagingMask = (long)0x80000000 }; struct TExtensionDeviceInfo { OSType creatorType; long version; long flags; Str31 name; }; typedef struct TExtensionDeviceInfo TExtensionDeviceInfo; struct TDeskPrinter { Str31 printerName; Str31 driverName; }; typedef struct TDeskPrinter TDeskPrinter; struct TPrinterList { short printerCount; TDeskPrinter printer[1]; }; typedef struct TPrinterList TPrinterList; typedef TPrinterList * TPrinterListPtr; typedef TPrinterListPtr * TPrinterListHdl; struct TDriverList { short driverCount; Str31 driverName[1]; }; typedef struct TDriverList TDriverList; typedef TDriverList * TDriverListPtr; typedef TDriverListPtr * TDriverListHdl; enum { kDriverLen = (sizeof(Str31)), kPrinterLen = (sizeof(TDeskPrinter)) }; /* The critical proc is a private value that application may change within the job*/ typedef CALLBACK_API_C( void , CriticalProcPtr )(Boolean aBoolean); typedef STACK_UPP_TYPE(CriticalProcPtr) CriticalUPP; enum { uppCriticalProcInfo = 0x00000041 }; /* no_return_value Func(1_byte) */ #define NewCriticalProc(userRoutine) (CriticalUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppCriticalProcInfo, GetCurrentArchitecture()) #define CallCriticalProc(userRoutine, aBoolean) CALL_ONE_PARAMETER_UPP((userRoutine), uppCriticalProcInfo, (aBoolean)) /* this structure is used by UnivDefaultJob and the General print panel to update the values displayed in the print panel. */ struct TGeneralPrintSettings { Boolean fAutoFeed; Boolean fFeedLocked; Handle qualitySettings; Boolean fQualityLocked; char pad1; Handle pageRangeSettings; Boolean fPageRangeLocked; char pad2; long copies; Boolean fCopiesLocked; Boolean fCollateCopies; Boolean fCollationLocked; Boolean fPDDDefaultSetting; Boolean fDefaultSettingLocked; char pad3; }; typedef struct TGeneralPrintSettings TGeneralPrintSettings; typedef TGeneralPrintSettings * TGeneralPrintSettingsPtr; typedef TGeneralPrintSettingsPtr * TGeneralPrintSettingsHdl; /* used to specify shared connections to remote devices*/ struct GlobalConnectionRec { Str31 deviceName; /* name of the DTP for this connection*/ Ptr connectionPtr; /* connection info for this DTP*/ short ownerCount; /* how many people are using this connection?*/ }; typedef struct GlobalConnectionRec GlobalConnectionRec; typedef GlobalConnectionRec * GlobalConnectionPtr; struct BigClientRecord { gxGraphicsClient smallClient; gxGraphicsClient bigClient; short numOutputViewDevices; short numFormatingViewDevices; gxViewGroup outputViewGroup; gxViewGroup formattingViewGroup; gxViewDevice theDevices[1]; }; typedef struct BigClientRecord BigClientRecord; typedef BigClientRecord * BigClientPtr; typedef BigClientPtr * BigClientHandle; /********************************************************************************* * COLLECTION TAGS * *********************************************************************************/ /*--------------------------*/ /* job collection tags... */ /*--------------------------*/ enum { toggleWNETag = FOUR_CHAR_CODE('wnet') }; typedef CALLBACK_API_C( void , ToggleWNEProcPtr )(long cookie); typedef STACK_UPP_TYPE(ToggleWNEProcPtr) ToggleWNEUPP; enum { uppToggleWNEProcInfo = 0x000000C1 }; /* no_return_value Func(4_bytes) */ #define NewToggleWNEProc(userRoutine) (ToggleWNEUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppToggleWNEProcInfo, GetCurrentArchitecture()) #define CallToggleWNEProc(userRoutine, cookie) CALL_ONE_PARAMETER_UPP((userRoutine), uppToggleWNEProcInfo, (cookie)) struct ToggleWNERecord { ToggleWNEUPP theProc; long theCookie; }; typedef struct ToggleWNERecord ToggleWNERecord; /* old API document name, read in Core PrValidate, used in QuickDraw PrOpenDoc*/ enum { oldDocumentNameTag = FOUR_CHAR_CODE('onam') }; /* private Printing Manager info*/ enum { univInfoTag = FOUR_CHAR_CODE('univ') }; /* remote job information*/ enum { remoteJobTag = FOUR_CHAR_CODE('rjob') }; struct RemoteJobInfo { long jobID; /* remote ID - nil for jobs that are still local*/ long queueID; /* remote queue - nil for jobs that are still local*/ long deviceID; /* remote device - nil for jobs that are still local*/ }; typedef struct RemoteJobInfo RemoteJobInfo; /* PrintFile's creator and file type*/ enum { gxFileTypeTag = FOUR_CHAR_CODE('ftyp') }; struct gxFileTypeInfo { OSType fdType; /* the type of the PrintFile*/ OSType fdCreator; /* PrintFile's creator*/ }; typedef struct gxFileTypeInfo gxFileTypeInfo; /* greatest # of objects on any page (optimization value for PrinterShare)*/ enum { gxObjectCountTag = FOUR_CHAR_CODE('objs') }; struct gxObjectCountInfo { long minHeapSize; long preferredHeapSize; }; typedef struct gxObjectCountInfo gxObjectCountInfo; /* The custom page feed structure in a job collection for non-gx style custom page feed. (Currently used by PS.) */ enum { gxCustomPageFeedItem = FOUR_CHAR_CODE('cfed') }; struct TCustomPageFeedRec { Str31 firstPaperName; Str31 remainingPaperName; }; typedef struct TCustomPageFeedRec TCustomPageFeedRec; /*--------------------------*/ /* format collection tags...*/ /*--------------------------*/ enum { jobFormatModeTag = FOUR_CHAR_CODE('jfmd') }; enum { availableJobFormatModesID = 0, preferredJobFormatModeID = 1, jobFormatModeID = 2 }; /* =============== Paper Type Related Constants and Types =============== */ /* ===== Paper Type Groups ===== */ enum { systemPTGroup = 1, /* System paper type group*/ driverPTGroup = 2, /* Driver paper type group*/ userPTGroup = 3, /* User paper type group*/ configFilePTGroup = 4, /* Configuration file paper type group*/ documentPTGroup = 5 /* Designates application documents as a paper type group*/ }; /* ===== Constants for Selecting Old and New Paper Types ===== */ enum { wantOldPTs = 0, /* Return old paper types only*/ wantNewPTs = 1, /* Return new paper types only*/ wantOldAndNewPTs = 2 /* Return old and new paper types*/ }; /* =============== Paper Type Handler Types =============== */ /* PTGroupSpec - structure containing information needed by the Paper Type module to */ /* access paper type definitions in a specific group. */ struct PTGroupSpec { FSSpec fileSpec; /* Info. about the current file being accessed*/ short internalUse; /* For internal use - varies depending upon the type of group*/ short internalUse2; /* For internal use - varies depending upon the type of group*/ unsigned char ptGroup; /* Paper type group referenced (systemPTGroup, driverPTGroup, userPTGroup, or configFilePTGroup)*/ char pad; }; typedef struct PTGroupSpec PTGroupSpec; typedef PTGroupSpec * PTGroupSpecPtr; /* =============== Constants and types for the "looker" resource =============== */ /* The looker resource is used by the Chooser PACK to determine what kind of communications this driver supports. (In order to generate/handle the pop-up menu for "Connect via:". The looker resource is also used by PrinterShare to determine the AppleTalk NBP Type for servers created for this driver. */ enum { kIsAppleTalk = 0x00000001, /* this looker is for an AppleTalk device*/ kIconCells = 0x00000002, /* this looker displays icons in the list*/ kPrinterShare = 0x00000004 /* this looker is for PrinterShare servers*/ }; struct LookerRecord { Str32 lookerName; /* name of the looker*/ char pad; /* one byte padding*/ short commID; /* looker 'comm' resource*/ long lookerFlags; /* options for this looker*/ Str32 lookerMiscString; /* NBP Type, or default name*/ }; typedef struct LookerRecord LookerRecord; typedef LookerRecord * LookerPtr; /* the looker list is the list of all of the communications types supported by this driver*/ struct LookerList { short currentLooker; /* current (or default) looker*/ short lookerCount; /* number of lookers*/ LookerRecord lookerList[1]; /* and the list of them*/ }; typedef struct LookerList LookerList; typedef LookerList * LookerListPtr; typedef LookerListPtr * LookerListHandle; /* This is the structure to fill-out during spooling of QDShape for color information. */ enum { ColorInfoTag = FOUR_CHAR_CODE('cnfo') }; struct QuickDrawPictInfo { short mode; /* 0->srcCopy mode only in the picture, !0->some other mode in the picture*/ }; typedef struct QuickDrawPictInfo QuickDrawPictInfo; /* DragFlags values for GXHandleDTPDrop.*/ enum { kCheckFile = 0, /* means: "simply return the action flags without processing the file as yet" */ kProcessFile = 1 /* means: "process the file and specify which action was taken" */ }; typedef unsigned long DragFlags; /* ActionFlags values for GXHandleDTPDrop.*/ enum { kNoAction = 0, /* means: "I don't know this file; PFE should look at this file" */ kDropHandled = 1 /* means: "I will/did handle this file" */ }; typedef unsigned long ActionFlags; EXTERN_API_C( OSErr ) GXHandleDTPDrop (FSSpec * theDrop, FSSpec * theTargetDTP, DragFlags theDragFlags, ActionFlags * theActionFlags) SEVENWORDINLINE(0x203C, 0x1008, 0x00A8, 0x2078, 0x0948, 0x2050, 0x4E90); /* Miscellaneous Routines, COREPRIVATEAPIGLUE - These go through _Printing.*/ EXTERN_API_C( OSErr ) ProtectedDispatch (long selector, long arg2, long arg3, long arg4, long arg5, long arg6, long arg7, long arg8, long arg9, long arg10, long arg11, long arg12) SIXWORDINLINE(0x221F, 0x203C, 0x0003, 0x0000, 0xABFE, 0x518F); EXTERN_API_C( gxJob ) SetJob (gxJob aJob) FOURWORDINLINE(0x203C, 0x0003, 0x0001, 0xABFE); EXTERN_API_C( Boolean ) IsOldApplication (void) FOURWORDINLINE(0x203C, 0x0003, 0x0002, 0xABFE); EXTERN_API_C( MessageHandler ) GetJobDriverHandlerID (gxJob aJob) FOURWORDINLINE(0x203C, 0x0003, 0x0003, 0xABFE); EXTERN_API_C( gxJob ) DoGXGetJob (void) FOURWORDINLINE(0x203C, 0x0003, 0x0004, 0xABFE); EXTERN_API_C( short ) DoGXGetMessageHandlerResFile (void) FOURWORDINLINE(0x203C, 0x0003, 0x0005, 0xABFE); EXTERN_API_C( Boolean ) DoGXSpoolingAborted (void) FOURWORDINLINE(0x203C, 0x0003, 0x0006, 0xABFE); EXTERN_API_C( OSErr ) DoGXJobIdle (void) FOURWORDINLINE(0x203C, 0x0003, 0x0007, 0xABFE); EXTERN_API_C( void ) DisposeExtensionList (ExtensionList extensionList) FOURWORDINLINE(0x203C, 0x0003, 0x0008, 0xABFE); EXTERN_API_C( void ) DoGXDisposeFormat (gxFormat aFormat) FOURWORDINLINE(0x203C, 0x0003, 0x0009, 0xABFE); EXTERN_API_C( void ) DoGXDisposePaperType (gxPaperType aPaperType) FOURWORDINLINE(0x203C, 0x0003, 0x000A, 0xABFE); EXTERN_API_C( void ) DeallocateFormat (gxFormat aFormat) FOURWORDINLINE(0x203C, 0x0003, 0x000B, 0xABFE); EXTERN_API_C( void ) DeallocatePaperType (gxPaperType aPaperType) FOURWORDINLINE(0x203C, 0x0003, 0x000C, 0xABFE); EXTERN_API_C( short ) GetTBMapping (void) FOURWORDINLINE(0x203C, 0x0003, 0x000D, 0xABFE); EXTERN_API_C( short ) GetISMapping (void) FOURWORDINLINE(0x203C, 0x0003, 0x000E, 0xABFE); EXTERN_API_C( short ) MapTBResource (short unMappedResID) FOURWORDINLINE(0x203C, 0x0003, 0x000F, 0xABFE); EXTERN_API_C( short ) MapISResource (short unMappedResID) FOURWORDINLINE(0x203C, 0x0003, 0x0010, 0xABFE); EXTERN_API_C( TGenericTable ) GetJobTable (void) FOURWORDINLINE(0x203C, 0x0003, 0x0011, 0xABFE); EXTERN_API_C( TGenericTable ) GetPaperTypeTable (void) FOURWORDINLINE(0x203C, 0x0003, 0x0012, 0xABFE); EXTERN_API_C( TGenericTable ) GetPrinterTable (void) FOURWORDINLINE(0x203C, 0x0003, 0x0013, 0xABFE); EXTERN_API_C( TGenericTable ) GetPrintFileTable (void) FOURWORDINLINE(0x203C, 0x0003, 0x0014, 0xABFE); EXTERN_API_C( void *) GetDefaultDispatchProc (void) FOURWORDINLINE(0x203C, 0x0003, 0x0015, 0xABFE); EXTERN_API_C( MessageHandlerSetupProc ) GetDefaultSetupProc (void) FOURWORDINLINE(0x203C, 0x0003, 0x0016, 0xABFE); EXTERN_API_C( void *) GetPrinterShareStorage (void) FOURWORDINLINE(0x203C, 0x0003, 0x0017, 0xABFE); EXTERN_API_C( void ) SetPrinterShareStorage (void * storage) FOURWORDINLINE(0x203C, 0x0003, 0x0018, 0xABFE); EXTERN_API_C( void *) GetAsyncIOStorage (void) FOURWORDINLINE(0x203C, 0x0003, 0x0019, 0xABFE); EXTERN_API_C( void ) SetAsyncIOStorage (void * storage) FOURWORDINLINE(0x203C, 0x0003, 0x001A, 0xABFE); EXTERN_API_C( void *) GetHandlerStorage (short whichHandler) FOURWORDINLINE(0x203C, 0x0003, 0x001B, 0xABFE); EXTERN_API_C( void ) SetHandlerStorage (short whichHandler, void * storage) FOURWORDINLINE(0x203C, 0x0003, 0x001C, 0xABFE); EXTERN_API_C( OSErr ) NewSegmentStack (TSegmentStack * segStack) FOURWORDINLINE(0x203C, 0x0003, 0x001D, 0xABFE); EXTERN_API_C( void ) DisposeSegmentStack (TSegmentStack segStack) FOURWORDINLINE(0x203C, 0x0003, 0x001E, 0xABFE); EXTERN_API_C( OSErr ) NewSegmentTable (short clientRefNum, ResType segType, TSegmentTable * segStack) FOURWORDINLINE(0x203C, 0x0003, 0x001F, 0xABFE); EXTERN_API_C( void ) DisposeSegmentTable (TSegmentTable segTable) FOURWORDINLINE(0x203C, 0x0003, 0x0020, 0xABFE); EXTERN_API_C( void ) UnloadSegments (TSegmentTable segTable) FOURWORDINLINE(0x203C, 0x0003, 0x0021, 0xABFE); EXTERN_API_C( OSErr ) LoadSegment (TSegmentTable segTable, short segID, Handle * segment) FOURWORDINLINE(0x203C, 0x0003, 0x0022, 0xABFE); EXTERN_API_C( OSErr ) NewGenericTable (TGenericTable * table) FOURWORDINLINE(0x203C, 0x0003, 0x0023, 0xABFE); EXTERN_API_C( void ) DisposeGenericTable (TGenericTable table) FOURWORDINLINE(0x203C, 0x0003, 0x0024, 0xABFE); EXTERN_API_C( long ) CountGenericTableEntries (TGenericTable table) FOURWORDINLINE(0x203C, 0x0003, 0x0025, 0xABFE); EXTERN_API_C( OSErr ) GenericTableInsert (TGenericTable table, void * object, long * reference) FOURWORDINLINE(0x203C, 0x0003, 0x0026, 0xABFE); EXTERN_API_C( OSErr ) GenericTablePut (TGenericTable table, void * object, long where) FOURWORDINLINE(0x203C, 0x0003, 0x0027, 0xABFE); EXTERN_API_C( void *) GenericTableDelete (TGenericTable table, long reference) FOURWORDINLINE(0x203C, 0x0003, 0x0028, 0xABFE); EXTERN_API_C( void *) GenericTableRetrieve (TGenericTable table, long reference) FOURWORDINLINE(0x203C, 0x0003, 0x0029, 0xABFE); EXTERN_API_C( TGenericTable ) GetFormatTable (gxJob aJob) FOURWORDINLINE(0x203C, 0x0003, 0x002A, 0xABFE); EXTERN_API_C( TPrintingClient ) GetJobCurrentClient (gxJob aJob) FOURWORDINLINE(0x203C, 0x0003, 0x002B, 0xABFE); EXTERN_API_C( TAppOverrideTableHdl ) GetJobAppOverrides (gxJob aJob) FOURWORDINLINE(0x203C, 0x0003, 0x002C, 0xABFE); EXTERN_API_C( gxPrinter ) SelectJobPrinter (gxJob aJob, gxPrinter aPrinter) FOURWORDINLINE(0x203C, 0x0003, 0x002D, 0xABFE); EXTERN_API_C( CriticalUPP ) GetJobCriticalProc (gxJob aJob) FOURWORDINLINE(0x203C, 0x0003, 0x002E, 0xABFE); EXTERN_API_C( void ) SetJobCriticalProc (gxJob aJob, CriticalUPP proc) FOURWORDINLINE(0x203C, 0x0003, 0x002F, 0xABFE); EXTERN_API_C( short ) GetJobDriverRefNum (gxJob aJob) FOURWORDINLINE(0x203C, 0x0003, 0x0030, 0xABFE); EXTERN_API_C( void ) SetJobDeferredLoadInfo (gxJob aJob, Str31 driverName, Str31 printerName) FOURWORDINLINE(0x203C, 0x0003, 0x0031, 0xABFE); EXTERN_API_C( unsigned long ) GetFormatSeed (gxFormat aFormat) FOURWORDINLINE(0x203C, 0x0003, 0x0032, 0xABFE); EXTERN_API_C( void ) GetPrinterInfo (gxPrinter aPrinter, TPrinterInfo * printerInfo) FOURWORDINLINE(0x203C, 0x0003, 0x0033, 0xABFE); EXTERN_API_C( MessageObject ) GetPrinterMessageObject (gxPrinter aPrinter) FOURWORDINLINE(0x203C, 0x0003, 0x0034, 0xABFE); EXTERN_API_C( MessageClass ) GetPrinterMessageClass (gxPrinter aPrinter) FOURWORDINLINE(0x203C, 0x0003, 0x0035, 0xABFE); EXTERN_API_C( TPrintingClient ) GetPrinterDriverClientID (gxPrinter aPrinter) FOURWORDINLINE(0x203C, 0x0003, 0x0036, 0xABFE); EXTERN_API_C( short ) GetPrinterISMapping (gxPrinter aPrinter) FOURWORDINLINE(0x203C, 0x0003, 0x0037, 0xABFE); EXTERN_API_C( void ) KillPrinterViewDevices (gxPrinter aPrinter) FOURWORDINLINE(0x203C, 0x0003, 0x0038, 0xABFE); EXTERN_API_C( TPrinterClass ) GetPrinterClass (gxPrinter aPrinter) FOURWORDINLINE(0x203C, 0x0003, 0x0039, 0xABFE); EXTERN_API_C( long ) CountPrinterClassOwners (TPrinterClass aPClass) FOURWORDINLINE(0x203C, 0x0003, 0x003A, 0xABFE); EXTERN_API_C( void ) DisposePrinterClass (TPrinterClass aPClass) FOURWORDINLINE(0x203C, 0x0003, 0x003B, 0xABFE); EXTERN_API_C( OSErr ) FetchResource (ResType resType, short resID, Handle * resHdl) FOURWORDINLINE(0x203C, 0x0003, 0x003C, 0xABFE); EXTERN_API_C( OSErr ) FetchDriverData (gxJob aJob, ResType resType, short theID, Handle * hResource) FOURWORDINLINE(0x203C, 0x0003, 0x003D, 0xABFE); EXTERN_API_C( MessageObject ) GetJobObject (void) FOURWORDINLINE(0x203C, 0x0003, 0x003E, 0xABFE); EXTERN_API_C( TPrintingClient ) SwapPrintingClient (TPrintingClient clientID) FOURWORDINLINE(0x203C, 0x0003, 0x003F, 0xABFE); EXTERN_API_C( unsigned long ) GetDefaultHeapPrefs (void) FOURWORDINLINE(0x203C, 0x0003, 0x0040, 0xABFE); EXTERN_API_C( void ) SetDefaultHeapPrefs (unsigned long heapPrefs) FOURWORDINLINE(0x203C, 0x0003, 0x0041, 0xABFE); EXTERN_API_C( OSErr ) PrNewAllocation (unsigned long allocFlags, long size, void * newAlloc) FOURWORDINLINE(0x203C, 0x0003, 0x0042, 0xABFE); EXTERN_API_C( OSErr ) PrSetPtrSize (Ptr p, long size) FOURWORDINLINE(0x203C, 0x0003, 0x0043, 0xABFE); EXTERN_API_C( OSErr ) PrSetHandleSize (Handle h, long size) FOURWORDINLINE(0x203C, 0x0003, 0x0044, 0xABFE); EXTERN_API_C( OSErr ) PrPtrToHand (const void * p, Handle * pHandle, long size) FOURWORDINLINE(0x203C, 0x0003, 0x0045, 0xABFE); EXTERN_API_C( OSErr ) PrHandToHand (Handle * h) FOURWORDINLINE(0x203C, 0x0003, 0x0046, 0xABFE); EXTERN_API_C( OSErr ) PrDisposePtr (Ptr p) FOURWORDINLINE(0x203C, 0x0003, 0x0047, 0xABFE); EXTERN_API_C( OSErr ) PrDisposeHandle (Handle h) FOURWORDINLINE(0x203C, 0x0003, 0x0048, 0xABFE); EXTERN_API_C( OSErr ) PrDisposePtrAt (Ptr * p) FOURWORDINLINE(0x203C, 0x0003, 0x0049, 0xABFE); EXTERN_API_C( OSErr ) PrDisposeHandleAt (Handle * h) FOURWORDINLINE(0x203C, 0x0003, 0x004A, 0xABFE); EXTERN_API_C( void ) PrClearBlock (Ptr p, long size) FOURWORDINLINE(0x203C, 0x0003, 0x004B, 0xABFE); EXTERN_API_C( void *) GetDTPCacheStorage (void) FOURWORDINLINE(0x203C, 0x0003, 0x004C, 0xABFE); EXTERN_API_C( void ) SetDTPCacheStorage (void * storage) FOURWORDINLINE(0x203C, 0x0003, 0x004D, 0xABFE); EXTERN_API_C( OSErr ) GetSharedGraphicsClient (gxGraphicsClient * aClient) FOURWORDINLINE(0x203C, 0x0003, 0x004E, 0xABFE); EXTERN_API_C( void ) DisposeSharedGraphicsClient (void) FOURWORDINLINE(0x203C, 0x0003, 0x004F, 0xABFE); EXTERN_API_C( OSErr ) InstallPrintFileWarningHandler (void) FOURWORDINLINE(0x203C, 0x0003, 0x0050, 0xABFE); EXTERN_API_C( void *) GetValidationCacheStorage (void) FOURWORDINLINE(0x203C, 0x0003, 0x0051, 0xABFE); EXTERN_API_C( void ) SetValidationCacheStorage (void * storage) FOURWORDINLINE(0x203C, 0x0003, 0x0052, 0xABFE); /* =========================================================================== */ /* The following calls are only for use by Printing and the Finder. */ /* =========================================================================== */ /* ================================================================================ */ /* ******* CLIENT CONSTANTS AND TYPES ********/ /* Structures used by the logon process - the client code does not actually implement the dialogs, but uses this information to talk back and forth to those who do. */ /* the server info record in a more easily usable form, created by SelectUAM*/ struct ServerInfoRecord { short scriptCode; /* script code of server name*/ Str255 serverName; /* Name of the server*/ UAMType theUAM; /* Selected UAM to use*/ Str255 theDescription; /* English text for the UAM in use*/ Boolean hasCookies; /* server uses magic cookies*/ Boolean supportsGuest; /* server supports guest logons*/ Boolean onlyGuest; /* server ONLY supports guests*/ Boolean supportsNoPassword; /* server supports password-less authentication*/ Boolean supportsChangePassword; /* server lets the user change password*/ Boolean supportsZoneSecurity; /* server allows authentication by zone*/ }; typedef struct ServerInfoRecord ServerInfoRecord; typedef ServerInfoRecord * ServerInfoPtr; struct LogonDialogRecord { Str32 userName; /* username seed*/ Str32 password; /* password seed*/ short whichToSelect; /* which item to select in the dialog*/ ServerInfoRecord theInfo; /* call SelectUAM to fill this in*/ DialogPtr dPtr; /* the logon dialog*/ GrafPtr curPort; /* port prior to the dialog*/ long twoWayRandNum[8]; /* used to pass randNums back to server*/ long refCon; /* handy place to stuff clientptr*/ long privsGranted; /* privs returned from server*/ QDProcs passwordProcs; /* QuickDraw bottlenecks for passwords*/ }; typedef struct LogonDialogRecord LogonDialogRecord; typedef LogonDialogRecord * LogonDialogPtr; /* Client Record*/ /* Contains all the state information needed to maintain an APSP connection to a PrinterShare server. Based on shared connection record defined in the section above */ /* Note that clients may share connections; see Core:PrivateAPI:RemotePrinterAPI.c for more details. */ struct ClientRecord { ConnectionRecord c; /* the basic connection stuff*/ short ownerCount; /* number of people using this record*/ Ptr nextClient; /* next client record in*/ short eventProcID; /* id of event handler*/ short replyProcID; /* id of PSP reply handler*/ short requestCode; /* PSP Request or NBP command code*/ short replyCode; /* PSP Reply command code*/ long handlerData; /* handler-defined data*/ long userData; /* user-define data*/ Boolean clientBusy; /* true if a request is in progress*/ char pad; ProcessSerialNumber requestPSN; /* person making request (0 for none)*/ long requestTimeout; /* when TickCount > this, timeout request*/ short fileRefNum; /* refNum for file we are dealing with*/ HParamBlockRec filePB; /* the param block for file IO*/ Str32 nbpName; /* NBP name registered on this node*/ Str32 nbpType; /* NBP type registered on this node*/ }; typedef struct ClientRecord ClientRecord; typedef ClientRecord * ClientPtr; typedef struct OpaqueTLookupPtr* TLookupPtr; typedef struct OpaqueTPingPtr* TPingPtr; struct NOPSRecord { ResType commType; /* communication type == 'nops'*/ }; typedef struct NOPSRecord NOPSRecord; typedef NOPSRecord * NOPSPtr; typedef NOPSPtr * NOPSHandle; /* ---------------------------------------------------------------------- CONSTANTS ---------------------------------------------------------------------- */ /* requests timeout after this amount of time, in ticks, if no network traffic has been seen */ enum { kRequestTimeout = (60 * 60 * 2) }; /* EventProcID is used by the client state machine (CallEventHandler) to tell which event handler it should call */ enum { kNoIdle = 0, /* not doing nothin'*/ kStandardRequestIdle = 1, /* standard request handler*/ kStandardReplyIdle = 2, /* standard reply handler*/ kOpenIdle = 3, /* client connection is being opened*/ kManualIdle = 4 /* client transaction handled manually*/ }; /* ReplyProcID is used by the client state machine (CallPSPHandler) to tell which PSP command reply handler should be called when the PSP reply is received */ enum { kGetServerInfoReply = 101, /* GetServerInfo reply handler*/ kAuthenticateReply = 102, /* Authenticate reply handler*/ kValidateReply = 103, /* Validate reply handler*/ kGenericReply = 104, /* Generic AppleEvent reply handler*/ kDeviceStatusReply = 105, /* DeviceStatus reply handler*/ kJobInfoReply = 106, /* GetJobInfo reply handler*/ kCloseSessionReply = 107, /* CloseSession reply handler*/ kReturnErrorReply = 108 /* return result code reply handler*/ }; /* |* ================================================================================ */ /* ******* DEVCONFILE HANDLER CONSTANTS AND TYPES ********/ /* -----------File type and creator (not public)----------------------*/ enum { kConfigFileType = FOUR_CHAR_CODE('dvcf'), kConfigFileCreator = FOUR_CHAR_CODE('dcdc') }; /* ----------------------------------• 'cnfg' •---------------------------------- The driver used by this desktop printer */ enum { kDeviceConfigType = FOUR_CHAR_CODE('cnfg'), kDeviceConfigID = 1 }; struct DeviceConfigInfo { OSType driverType; OSType deviceType; Str31 driverName; }; typedef struct DeviceConfigInfo DeviceConfigInfo; typedef DeviceConfigInfo * DeviceConfigPtr; typedef DeviceConfigPtr * DeviceConfigHdl; /* ----------------------------------• 'comm' •---------------------------------- The communications method and private data used to connect to the printer */ enum { kCommunicationsType = gxDeviceCommunicationsType, kCommunicationsID = gxDeviceCommunicationsID }; /* ----------------------------------• 'shrd' •---------------------------------- Is this printer shared, if so, with whom? */ enum { kSharedPrinterType = FOUR_CHAR_CODE('shrd'), kSharedPrinterID = 0 }; typedef long DCAuth; typedef unsigned long DCPriv; /* DCAuthInfo*/ struct DCAuthInfo { DCAuth authType; /* user, group, zone, or guest*/ DCPriv privFlags; /* privileges for this entry*/ Str31 name; /* for user, group; nil for guest or zone guest packed and null-padded to word*/ }; typedef struct DCAuthInfo DCAuthInfo; typedef DCAuthInfo * DCAuthInfoPtr; typedef DCAuthInfoPtr * DCAuthInfoHdl; /* DCShareInfo 'shrd' resource format */ struct DCShareInfo { long maxUsers; /* maximum number of active users*/ long authCount; /* count of authentication records*/ DCAuthInfo authList[1]; /* zero or more authentication records null-padded to word alignment*/ }; typedef struct DCShareInfo DCShareInfo; typedef DCShareInfo * DCShareInfoPtr; typedef DCShareInfoPtr * DCShareInfoHdl; /* Authentication record types for DCAuthInfo Start at -1 for FileShare compatibility */ enum { kDCAuthInfoGroup = -1, kDCAuthInfoUser = 0, kDCAuthInfoZone = 1, kDCAuthInfoGuest = 2 }; /* ----------------------------------• 'capt' •---------------------------------- Should this printer be captured? If resource is missing, printer cannot be captured. */ enum { kCapturePrinterType = FOUR_CHAR_CODE('capt'), kCapturePrinterID = 1, kDontCapturePrinter = 0x0000, kCapturePrinter = 0x0001 }; /* ----------------------------------• 'stop' •---------------------------------- Is this printer stopped printing? If resource is missing, queue is not stopped. */ enum { kQueueStoppedType = FOUR_CHAR_CODE('stop'), kQueueStoppedID = 0, kQueueIsStopped = 0x0000, kQueueIsRunning = 0x0001 }; struct ImageStationAddress { ResType commType; /* communication type == 'ptsr'*/ char serverName[99]; /* packed AppleTalk name*/ char pad; unsigned long lastNetAddress; /* last address on the network for this device*/ }; typedef struct ImageStationAddress ImageStationAddress; typedef ImageStationAddress * ImageStationPtr; typedef ImageStationPtr * ImageStationHandle; /* comm type for PrinterShare*/ enum { kDCHCommType = FOUR_CHAR_CODE('ptsr'), kNOPSCommType = FOUR_CHAR_CODE('nops') }; /* enums for GetSystemPrintingString/SetSystemPrintingString.*/ enum { kDefaultOutputDriver = -8188, kDefaultFormattingPrinter = -8189, kDefaultFormattingDriver = -8191, kDefaultOutputPrinter = -8192 }; /* Printer Routines: 'pmgr' ID #0*/ EXTERN_API_C( OSErr ) NewPrinter (gxJob theJob, TPrinterInfo * thePrinterInfo, gxPrinter * thePrinter) SEVENWORDINLINE(0x203C, 0x1000, 0x0004, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DisposePrinter (gxPrinter thePrinter) SEVENWORDINLINE(0x203C, 0x1000, 0x0008, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) InitializePrinter (gxPrinter thePrinter) SEVENWORDINLINE(0x203C, 0x1000, 0x000C, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) ShutdownPrinter (gxPrinter thePrinter) SEVENWORDINLINE(0x203C, 0x1000, 0x0010, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) UpdatePrinter (gxPrinter thePrinter, TPrinterInfo * thePrinterInfo, Boolean forceUpdate) SEVENWORDINLINE(0x203C, 0x1000, 0x0014, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) CopyPrinter (gxPrinter srcPrinter, gxPrinter destPrinter) SEVENWORDINLINE(0x203C, 0x1000, 0x0018, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) GetPrinterModDate (gxPrinter thePrinter, long * modDate) SEVENWORDINLINE(0x203C, 0x1000, 0x001C, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) SetPrinterModDate (gxPrinter thePrinter, long modDate) SEVENWORDINLINE(0x203C, 0x1000, 0x0020, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DoGXAddPrinterViewDevice (gxPrinter thePrinter, gxViewDevice theViewDevice) SEVENWORDINLINE(0x203C, 0x1000, 0x0024, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DoGXSelectPrinterViewDevice (gxPrinter thePrinter, long whichViewDevice) SEVENWORDINLINE(0x203C, 0x1000, 0x0028, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DoGXFindPrinterProfile (gxPrinter thePrinter, void * searchData, long index, gxColorProfile * returnedProfile, long * numProfiles) SEVENWORDINLINE(0x203C, 0x1000, 0x002C, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DoGXSetPrinterProfile (gxPrinter thePrinter, gxColorProfile oldProfile, gxColorProfile newProfile) SEVENWORDINLINE(0x203C, 0x1000, 0x0030, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) SyncPrinter (gxPrinter thePrinter) SEVENWORDINLINE(0x203C, 0x1000, 0x0034, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) ReinitializePrinter (Str31 printerName) SEVENWORDINLINE(0x203C, 0x1000, 0x0038, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) CheckDriverVersion (Str31 driverName, Boolean * versionOk) SEVENWORDINLINE(0x203C, 0x1000, 0x003C, 0x2078, 0x0948, 0x2050, 0x4E90); /* PaperType Routines: 'pmgr' ID #1*/ EXTERN_API_C( OSErr ) AllocatePaperType (gxJob theJob, gxPaperType * thePaperType) SEVENWORDINLINE(0x203C, 0x1001, 0x0004, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DoGXNewPaperType (gxJob theJob, Str31 thePaperName, gxRectangle * thePageArea, gxRectangle * thePaperArea, gxPaperType * thePaperType) SEVENWORDINLINE(0x203C, 0x1001, 0x0008, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DoGXGetNewPaperType (gxJob theJob, short theResID, gxPaperType * dstPaperType) SEVENWORDINLINE(0x203C, 0x1001, 0x000C, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DoGXCopyPaperType (gxPaperType srcPaperType, gxPaperType * dstPaperType) SEVENWORDINLINE(0x203C, 0x1001, 0x0010, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DoGXCountJobPaperTypes (gxJob theJob, Boolean forFormatDevice, long * numPaperTypes) SEVENWORDINLINE(0x203C, 0x1001, 0x0014, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DoGXGetJobPaperType (gxJob theJob, long whichPaperType, Boolean forFormatDevice, gxPaperType * dstPaperType) SEVENWORDINLINE(0x203C, 0x1001, 0x0018, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DoGXForEachJobPaperTypeDo (gxJob theJob, GXPaperTypeUPP paperTypeProc, void * refCon, Boolean forFormatDevice) SEVENWORDINLINE(0x203C, 0x1001, 0x001C, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DoGXGetPaperTypeDimensions (gxPaperType thePaperType, gxRectangle * pageSize, gxRectangle * paperSize) SEVENWORDINLINE(0x203C, 0x1001, 0x0020, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) SetPaperTypeName (gxPaperType thePaperType, Str31 thePaperTypeName) SEVENWORDINLINE(0x203C, 0x1001, 0x0024, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) SetPaperTypeDimensions (gxPaperType thePaperType, gxRectangle * pageRect, gxRectangle * paperRect) SEVENWORDINLINE(0x203C, 0x1001, 0x0028, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) GetPaperTypeNameList (gxJob aJob, unsigned char paperTypeGroup, Str31 groupName, unsigned char whichPaperTypes, unsigned short * numNames, Handle * ptNameList) SEVENWORDINLINE(0x203C, 0x1001, 0x002C, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) GetPaperTypeNameFromList (unsigned short whichName, Str31 paperTypeName, Handle ptNameList) SEVENWORDINLINE(0x203C, 0x1001, 0x0030, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) GetPaperTypeGroupSpec (unsigned char paperTypeGroup, Str31 groupName, PTGroupSpecPtr ptGroupSpec) SEVENWORDINLINE(0x203C, 0x1001, 0x0034, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DoGXGetPaperType (gxJob aJob, PTGroupSpecPtr ptGroupSpec, short ptIndex, Str31 ptName, long ptBaseType, Boolean getDefaultPT, gxPaperType thePaperType) SEVENWORDINLINE(0x203C, 0x1001, 0x0038, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) SavePaperType (PTGroupSpecPtr ptGroupSpec, gxPaperType thePaperType) SEVENWORDINLINE(0x203C, 0x1001, 0x003C, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) RemovePaperType (PTGroupSpecPtr ptGroupSpec, gxPaperType thePaperType) SEVENWORDINLINE(0x203C, 0x1001, 0x0040, 0x2078, 0x0948, 0x2050, 0x4E90); /* Format Routines: 'pmgr' ID #2*/ EXTERN_API_C( OSErr ) AllocateFormat (gxJob theJob, gxFormat * theFormat) SEVENWORDINLINE(0x203C, 0x1002, 0x0004, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DoGXNewFormat (gxJob theJob, gxFormat * theFormat) SEVENWORDINLINE(0x203C, 0x1002, 0x0008, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DoGXCopyFormat (gxFormat srcFormat, gxFormat * dstFormat) SEVENWORDINLINE(0x203C, 0x1002, 0x000C, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DoGXGetFormatDimensions (gxFormat theFormat, gxRectangle * pageSize, gxRectangle * paperSize) SEVENWORDINLINE(0x203C, 0x1002, 0x0010, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DoGXSetFormatForm (gxFormat theFormat, gxShape form, gxShape mask) SEVENWORDINLINE(0x203C, 0x1002, 0x0014, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DoGXForEachJobFormatDo (gxJob theJob, GXFormatUPP formatProc, void * refCon) SEVENWORDINLINE(0x203C, 0x1002, 0x0018, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DoGXChangedFormat (gxFormat theFormat) SEVENWORDINLINE(0x203C, 0x1002, 0x001C, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DoGXFindFormatProfile (gxFormat theFormat, void * searchData, long index, gxColorProfile * returnedProfile, long * numProfiles) SEVENWORDINLINE(0x203C, 0x1002, 0x0020, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DoGXSetFormatProfile (gxFormat theFormat, gxColorProfile oldProfile, gxColorProfile newProfile) SEVENWORDINLINE(0x203C, 0x1002, 0x0024, 0x2078, 0x0948, 0x2050, 0x4E90); /* Extension Routines: 'pmgr' ID #3*/ EXTERN_API_C( OSErr ) InitDeviceExtensionList (Str31 deviceName) SEVENWORDINLINE(0x203C, 0x1003, 0x0004, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) EnableExtension (Str31 extensionName, Boolean isEnabled) SEVENWORDINLINE(0x203C, 0x1003, 0x0008, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) GetDeviceExtensionList (Str31 deviceName, ExtensionList * extensionList) SEVENWORDINLINE(0x203C, 0x1003, 0x000C, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) CountExtensions (ExtensionList extensionList, long * count) SEVENWORDINLINE(0x203C, 0x1003, 0x0010, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) FindExtension (ExtensionList extensionList, Str31 extensionName, long * location) SEVENWORDINLINE(0x203C, 0x1003, 0x0014, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) GetIndexedExtensionInfo (ExtensionList extensionList, long whichExtension, TExtensionDeviceInfo * extensionDevInfo) SEVENWORDINLINE(0x203C, 0x1003, 0x0018, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) ActivateDeviceExtension (ExtensionList extensionList, long whichExtension, Boolean isActive) SEVENWORDINLINE(0x203C, 0x1003, 0x001C, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) IsExtensionActive (ExtensionList extensionList, long whichExtension, Boolean * isActive) SEVENWORDINLINE(0x203C, 0x1003, 0x0020, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) InsertExtension (ExtensionList extensionList, long where, TExtensionDeviceInfo * extensionDevInfo) SEVENWORDINLINE(0x203C, 0x1003, 0x0024, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) RemoveExtension (ExtensionList extensionList, long where) SEVENWORDINLINE(0x203C, 0x1003, 0x0028, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) MoveExtension (ExtensionList extensionList, long moveFrom, long moveTo) SEVENWORDINLINE(0x203C, 0x1003, 0x002C, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) ConfirmDeviceExtensionList (Str31 deviceName, ExtensionList extensionList) SEVENWORDINLINE(0x203C, 0x1003, 0x0030, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) UpdateExtensionLists (void) SEVENWORDINLINE(0x203C, 0x1003, 0x0034, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) GetJobExtensionList (gxJob theJob, ExtensionList * extensionList) SEVENWORDINLINE(0x203C, 0x1003, 0x0038, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) GetDeviceExtensionActiveList (Str31 deviceName, ExtensionList * extensionList) SEVENWORDINLINE(0x203C, 0x1003, 0x003C, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) GetPrintingClientFromSignature (gxJob theJob, gxOwnerSignature handlerSignature, TPrintingClient * pClient) SEVENWORDINLINE(0x203C, 0x1003, 0x0040, 0x2078, 0x0948, 0x2050, 0x4E90); /* Job Routines: 'pmgr' ID #4*/ EXTERN_API_C( OSErr ) AllocateJob (gxJob * theJob) SEVENWORDINLINE(0x203C, 0x1004, 0x0004, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DeallocateJob (gxJob theJob) SEVENWORDINLINE(0x203C, 0x1004, 0x0008, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) SelectDriver (gxJob theJob, Boolean useLoadInfo, Boolean isOutputDevice) SEVENWORDINLINE(0x203C, 0x1004, 0x000C, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DoGXNewJob (gxJob * theJob) SEVENWORDINLINE(0x203C, 0x1004, 0x0010, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DoGXDisposeJob (gxJob theJob) SEVENWORDINLINE(0x203C, 0x1004, 0x0014, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DoGXCopyJob (gxJob srcJob, gxJob * dstJob) SEVENWORDINLINE(0x203C, 0x1004, 0x0018, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DoGXGetJobPageRange (gxJob theJob, long * firstPage, long * lastPage) SEVENWORDINLINE(0x203C, 0x1004, 0x001C, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DoGXInstallApplicationOverride (gxJob theJob, short messageID, void * override) SEVENWORDINLINE(0x203C, 0x1004, 0x0020, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DoGXUpdateJob (gxJob theJob, Boolean * changedIt) SEVENWORDINLINE(0x203C, 0x1004, 0x0024, 0x2078, 0x0948, 0x2050, 0x4E90); /* Print file Routines: 'pmgr' ID #5*/ EXTERN_API_C( OSErr ) DoGXOpenPrintFile (gxJob theJob, FSSpecPtr fSpec, char permission, gxPrintFile * thePrintFile) SEVENWORDINLINE(0x203C, 0x1005, 0x0004, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DoGXClosePrintFile (gxPrintFile thePrintFile) SEVENWORDINLINE(0x203C, 0x1005, 0x0008, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DoGXReadPrintFilePage (gxPrintFile thePrintFile, long pageNumber, long numViewPorts, gxViewPort * viewPortList, gxFormat * pageFormat, gxShape * pageShape) SEVENWORDINLINE(0x203C, 0x1005, 0x000C, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DoGXReplacePrintFilePage (gxPrintFile thePrintFile, long pageNumber, gxFormat pageFormat, gxShape pageShape) SEVENWORDINLINE(0x203C, 0x1005, 0x0010, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DoGXInsertPrintFilePage (gxPrintFile thePrintFile, long atPageNumber, gxFormat pageFormat, gxShape pageShape) SEVENWORDINLINE(0x203C, 0x1005, 0x0014, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DoGXDeletePrintFilePageRange (gxPrintFile thePrintFile, long fromPageNumber, long toPageNumber) SEVENWORDINLINE(0x203C, 0x1005, 0x0018, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DoGXSavePrintFile (gxPrintFile thePrintFile, FSSpec * fSpec) SEVENWORDINLINE(0x203C, 0x1005, 0x001C, 0x2078, 0x0948, 0x2050, 0x4E90); /* Public API Routines: 'pmgr' ID #6*/ EXTERN_API_C( OSErr ) DoGXJobDefaultFormatDialog (gxJob theJob, gxEditMenuRecord * editMenuRec, gxDialogResult * dialogResult) SEVENWORDINLINE(0x203C, 0x1006, 0x0004, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DoGXJobPrintDialog (gxJob theJob, gxEditMenuRecord * editMenuRec, gxDialogResult * dialogResult) SEVENWORDINLINE(0x203C, 0x1006, 0x0008, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DoGXFormatDialog (gxFormat theFormat, gxEditMenuRecord * editMenuRec, StringPtr title, gxDialogResult * dialogResult) SEVENWORDINLINE(0x203C, 0x1006, 0x000C, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DoGXEnableJobScalingPanel (gxJob theJob, Boolean enabled) SEVENWORDINLINE(0x203C, 0x1006, 0x0010, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DoGXGetJobPanelDimensions (gxJob theJob, Rect * panelArea) SEVENWORDINLINE(0x203C, 0x1006, 0x0014, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DoGXStartJob (gxJob theJob, StringPtr docName, long pageCount) SEVENWORDINLINE(0x203C, 0x1006, 0x0018, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DoGXFinishJob (gxJob theJob) SEVENWORDINLINE(0x203C, 0x1006, 0x001C, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DoGXStartPage (gxJob theJob, long pageNumber, gxFormat pageFormat, long numViewPorts, gxViewPort * viewPortList, Boolean * pageInRange) SEVENWORDINLINE(0x203C, 0x1006, 0x0020, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DoGXFinishPage (gxJob theJob) SEVENWORDINLINE(0x203C, 0x1006, 0x0024, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DoGXPrintPage (gxJob theJob, long pageNumber, gxFormat pageFormat, gxShape pageShape) SEVENWORDINLINE(0x203C, 0x1006, 0x0028, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DoGXSetAvailableJobFormatModes (gxJob theJob, gxJobFormatModeTableHdl formatModeTable) SEVENWORDINLINE(0x203C, 0x1006, 0x002C, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DoGXGetPreferredJobFormatMode (gxJob theJob, gxJobFormatMode * formatMode, Boolean * directOnly) SEVENWORDINLINE(0x203C, 0x1006, 0x0030, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DoGXGetJobFormatMode (gxJob theJob, gxJobFormatMode * formatMode) SEVENWORDINLINE(0x203C, 0x1006, 0x0034, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DoGXSetJobFormatMode (gxJob theJob, gxJobFormatMode formatMode) SEVENWORDINLINE(0x203C, 0x1006, 0x0038, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DoGXJobFormatModeQuery (gxJob theJob, gxQueryType typeOfQuery, void * srcData, void * dstData) SEVENWORDINLINE(0x203C, 0x1006, 0x003C, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DoGXSelectJobFormattingPrinter (gxJob theJob, Str31 printerName) SEVENWORDINLINE(0x203C, 0x1006, 0x0040, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DoGXSelectJobOutputPrinter (gxJob theJob, Str31 printerName) SEVENWORDINLINE(0x203C, 0x1006, 0x0044, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DoGXConvertPrintRecord (gxJob theJob, THPrint hPrint) SEVENWORDINLINE(0x203C, 0x1006, 0x0048, 0x2078, 0x0948, 0x2050, 0x4E90); /* Protected API Routines: 'pmgr' ID #7*/ EXTERN_API_C( OSErr ) DoGXReportStatus (long statusID, unsigned long statusIndex) SEVENWORDINLINE(0x203C, 0x1007, 0x0004, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DoGXAlertTheUser (gxStatusRecord * statusRec) SEVENWORDINLINE(0x203C, 0x1007, 0x0008, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DoGXSetupDialogPanel (gxPanelSetupRecord * panelRec) SEVENWORDINLINE(0x203C, 0x1007, 0x000C, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DoGXCountTrays (gxTrayIndex * numTrays) SEVENWORDINLINE(0x203C, 0x1007, 0x0010, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DoGXGetTrayName (gxTrayIndex whichTray, Str31 trayName) SEVENWORDINLINE(0x203C, 0x1007, 0x0014, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DoGXSetTrayPaperType (gxTrayIndex whichTray, gxPaperType trayPaperType) SEVENWORDINLINE(0x203C, 0x1007, 0x0018, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DoGXGetTrayPaperType (gxTrayIndex whichTray, gxPaperType trayPaperType) SEVENWORDINLINE(0x203C, 0x1007, 0x001C, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DoGXGetTrayMapping (gxTrayMapping * trayMapping) SEVENWORDINLINE(0x203C, 0x1007, 0x0020, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( void ) DoGXCleanupStartJob (void) SEVENWORDINLINE(0x203C, 0x1007, 0x0024, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( void ) DoGXCleanupStartPage (void) SEVENWORDINLINE(0x203C, 0x1007, 0x0028, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( void ) DoGXCleanupOpenConnection (void) SEVENWORDINLINE(0x203C, 0x1007, 0x002C, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( void ) DoGXCleanupStartSendPage (void) SEVENWORDINLINE(0x203C, 0x1007, 0x0030, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DoGXGetAvailableJobFormatModes (gxJobFormatModeTableHdl * formatModeTable) SEVENWORDINLINE(0x203C, 0x1007, 0x0034, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DoGXSetPreferredJobFormatMode (gxJobFormatMode formatMode, Boolean directOnly) SEVENWORDINLINE(0x203C, 0x1007, 0x0038, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DoGXFetchDTPData (Str31 dtpName, ResType theType, long theID, Handle * theData) SEVENWORDINLINE(0x203C, 0x1007, 0x003C, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DoGXWriteDTPData (Str31 dtpName, ResType theType, long theID, Handle theData) SEVENWORDINLINE(0x203C, 0x1007, 0x0040, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DoGXHandleChooserMessage (gxJob * aJob, Str31 driverName, long message, long caller, StringPtr objName, StringPtr zoneName, ListHandle theList, long p2) SEVENWORDINLINE(0x203C, 0x1007, 0x0044, 0x2078, 0x0948, 0x2050, 0x4E90); /* Private API Routines: 'pmgr' ID #8*/ EXTERN_API_C( OSErr ) GetDTPMenuList (gxJob theJob, MenuHandle printingMenu) SEVENWORDINLINE(0x203C, 0x1008, 0x0004, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DTPMenuSelect (gxJob theJob, short itemID) SEVENWORDINLINE(0x203C, 0x1008, 0x0008, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) HandleAlertFilter (gxJob theJob, gxStatusRecord * statusRec, DialogPtr theDialog, EventRecord * theEvent, short * itemHit, Boolean * returnImmed) SEVENWORDINLINE(0x203C, 0x1008, 0x000C, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) CreateDTP (gxJob theJob, FSSpecPtr dtpLocation, Str31 driverName, Handle commMethod) SEVENWORDINLINE(0x203C, 0x1008, 0x0010, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DeleteDTP (Str31 dtpName) SEVENWORDINLINE(0x203C, 0x1008, 0x0014, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) ForAllDTPsDo (DTPUPP aProc, void * refCon, long * numDTPs) SEVENWORDINLINE(0x203C, 0x1008, 0x0018, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) SelectOldAppPrinter (const ProcessSerialNumber * PSN, Str31 dtpName) SEVENWORDINLINE(0x203C, 0x1008, 0x001C, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DoGXDisplayAboutBox (long whichOne); /* = {0x203C, 0x1008, 28, 0x2078, 0x0948, 0x2050, 0x4E90};*/ EXTERN_API_C( OSErr ) DoGXGetDTPIconSuite (gxJob theJob, OSType theType, Handle * theIconSuite); /* = {0x203C, 0x1008, 28, 0x2078, 0x0948, 0x2050, 0x4E90};*/ EXTERN_API_C( OSErr ) DoGXHandleDTPDrop (FSSpec * theDrop, FSSpec * theTargetDTP, DragFlags theDragFlags, ActionFlags * theActionFlags); /* = {0x203C, 0x1008, 28, 0x2078, 0x0948, 0x2050, 0x4E90};*/ EXTERN_API_C( OSErr ) IsJobOutputDeviceRemote (gxJob theJob, Boolean * isRemote) SEVENWORDINLINE(0x203C, 0x1008, 0x0020, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) GetJobOutputDeviceStatus (gxJob theJob, long queueID, long deviceID, long magicCookie) SEVENWORDINLINE(0x203C, 0x1008, 0x0024, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) GetJobOutputDeviceFileList (gxJob theJob, long queueID, long deviceID, long magicCookie) SEVENWORDINLINE(0x203C, 0x1008, 0x0028, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) GetJobOutputDeviceFileInfo (gxJob theJob, long queueID, long deviceID, long fileID, long magicCookie) SEVENWORDINLINE(0x203C, 0x1008, 0x002C, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) RemoteIdle (gxJob theJob) SEVENWORDINLINE(0x203C, 0x1008, 0x0030, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) OpenRemoteDevice (gxJob theJob, Str31 deviceName, GlobalConnectionPtr theConnection, long deviceAddr) SEVENWORDINLINE(0x203C, 0x1008, 0x0034, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) CloseRemoteDevice (gxJob theJob, Str31 deviceName, GlobalConnectionPtr theConnection) SEVENWORDINLINE(0x203C, 0x1008, 0x0038, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) AuthenticateTheConnection (gxJob theJob, GlobalConnectionPtr sharedConnection, Str32 userName, unsigned long privRequested) SEVENWORDINLINE(0x203C, 0x1008, 0x003C, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) CaptureOutputDevice (gxJob theJob, Boolean capture) SEVENWORDINLINE(0x203C, 0x1008, 0x0040, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) SendFileToRemoteDevice (gxJob theJob, GlobalConnectionPtr theConnection, gxSpoolFile spoolFile, Boolean * sendImageFile) SEVENWORDINLINE(0x203C, 0x1008, 0x0044, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) GetJobOutputDeviceState (gxJob theJob, long queueID, long magicCookie) SEVENWORDINLINE(0x203C, 0x1008, 0x0048, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) SetJobOutputDeviceState (gxJob theJob, long queueID, long magicCookie, long queueState) SEVENWORDINLINE(0x203C, 0x1008, 0x004C, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) SetJobOutputDeviceFileInfo (gxJob theJob, long queueID, long deviceID, long fileID, long magicCookie, long priority, long timeToPrint, long jobTimeout, long firstPageToPrint, long numPages, long jobAlert) SEVENWORDINLINE(0x203C, 0x1008, 0x0050, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DeleteRemoteFile (gxJob theJob, long queueID, long deviceID, long fileID) SEVENWORDINLINE(0x203C, 0x1008, 0x0054, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) GetJobOutputDeviceInfoList (gxJob theJob, long queueID, long deviceID, long magicCookie) SEVENWORDINLINE(0x203C, 0x1008, 0x0058, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) GetJobOutputDeviceInfo (gxJob theJob, long queueID, long deviceID, long magicCookie, ResType infoType, long infoID) SEVENWORDINLINE(0x203C, 0x1008, 0x005C, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) OpenSpoolFile (gxJob theJob, FSSpecPtr fSpec, char ioPermssn, gxSpoolFile * theSpoolFile, Boolean readFontDataBase) SEVENWORDINLINE(0x203C, 0x1008, 0x0060, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) CloseSpoolFile (gxSpoolFile theSpoolFile, long closeOptions) SEVENWORDINLINE(0x203C, 0x1008, 0x0064, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) PrintJob (gxJob theJob, FSSpecPtr fSpec) SEVENWORDINLINE(0x203C, 0x1008, 0x0068, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) GetDriverList (TDriverListHdl * driverList) SEVENWORDINLINE(0x203C, 0x1008, 0x006C, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) CallGXJobIdle (gxJob theJob) SEVENWORDINLINE(0x203C, 0x1008, 0x0070, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) WriteStatusToDTPWindow (gxJob theJob, gxStatusRecord * statusRec, gxDisplayRecord * displayRec) SEVENWORDINLINE(0x203C, 0x1008, 0x0074, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) InitializeStatusAlert (gxJob theJob, gxStatusRecord * statusRec, DialogPtr * theDialog) SEVENWORDINLINE(0x203C, 0x1008, 0x0078, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) HandleAlertStatus (gxJob theJob, gxStatusRecord * statusRec) SEVENWORDINLINE(0x203C, 0x1008, 0x007C, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) HandleAlertEvent (gxJob theJob, gxStatusRecord * statusRec, DialogPtr theDialog, EventRecord * theEvent, short * itemHit) SEVENWORDINLINE(0x203C, 0x1008, 0x0080, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) SwitchToBigClient (gxJob theJob, BigClientHandle * restoreHandle) SEVENWORDINLINE(0x203C, 0x1008, 0x0084, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) RestoreSmallClient (gxJob theJob, BigClientHandle * restoreHandle) SEVENWORDINLINE(0x203C, 0x1008, 0x0088, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DoSpoolData (gxJob theJob, gxSpoolFile theSpoolFile, Ptr dataPtr, long * byteCount) SEVENWORDINLINE(0x203C, 0x1008, 0x008C, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DoDespoolData (gxJob theJob, gxSpoolFile theSpoolFile, Ptr dataPtr, long * byteCount) SEVENWORDINLINE(0x203C, 0x1008, 0x0090, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) ReadPrefs (Collection prefs) SEVENWORDINLINE(0x203C, 0x1008, 0x0094, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) WritePrefs (Collection prefs) SEVENWORDINLINE(0x203C, 0x1008, 0x0098, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) GetSystemPrintingString (long stringID, Str31 theString) SEVENWORDINLINE(0x203C, 0x1008, 0x009C, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) SetSystemPrintingString (long stringID, ConstStr31Param theString) SEVENWORDINLINE(0x203C, 0x1008, 0x00A0, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DoGXDisplayAboutBox (long whichOne) SEVENWORDINLINE(0x203C, 0x1008, 0x00A4, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DoGXGetDTPIconSuite (gxJob theJob, OSType theType, Handle * theIconSuite) SEVENWORDINLINE(0x203C, 0x1008, 0x00A8, 0x2078, 0x0948, 0x2050, 0x4E90); /* Flattening Routines: 'pmgr' ID #9*/ EXTERN_API_C( OSErr ) DoGXFlattenJob (gxJob theJob, GXPrintingFlattenUPP flattenProc, void * refCon) SEVENWORDINLINE(0x203C, 0x1009, 0x0004, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DoGXUnflattenJob (gxJob theJob, GXPrintingFlattenUPP flattenProc, void * refCon) SEVENWORDINLINE(0x203C, 0x1009, 0x0008, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DoGXFlattenJobToHdl (gxJob theJob, Handle * destHandle) SEVENWORDINLINE(0x203C, 0x1009, 0x000C, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DoGXUnflattenJobFromHdl (gxJob theJob, Handle srcHandle) SEVENWORDINLINE(0x203C, 0x1009, 0x0010, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) FlattenJobDataToHdl (gxJob theJob, Handle * destHandle) SEVENWORDINLINE(0x203C, 0x1009, 0x0014, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) UnflattenJobDataFromHdl (gxJob theJob, Handle srcHandle) SEVENWORDINLINE(0x203C, 0x1009, 0x0018, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) FlattenFormat (gxFormat theFormat, GXPrintingFlattenUPP flattenProc, void * refCon) SEVENWORDINLINE(0x203C, 0x1009, 0x001C, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) UnflattenFormat (gxFormat theFormat, GXPrintingFlattenUPP flattenProc, void * refCon) SEVENWORDINLINE(0x203C, 0x1009, 0x0020, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) FlattenFormatToHdl (gxFormat theFormat, Handle * destHandle) SEVENWORDINLINE(0x203C, 0x1009, 0x0024, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) UnflattenFormatFromHdl (gxFormat theFormat, Handle srcHandle) SEVENWORDINLINE(0x203C, 0x1009, 0x0028, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) FlattenPaperType (gxPaperType thePaperType, GXPrintingFlattenUPP flattenProc, void * refCon) SEVENWORDINLINE(0x203C, 0x1009, 0x002C, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) UnflattenPaperType (gxPaperType thePaperType, GXPrintingFlattenUPP flattenProc, void * refCon) SEVENWORDINLINE(0x203C, 0x1009, 0x0030, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) FlattenPaperTypeToHdl (gxPaperType thePaperType, Handle * destHandle) SEVENWORDINLINE(0x203C, 0x1009, 0x0034, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) UnflattenPaperTypeFromHdl (gxPaperType thePaperType, Handle srcHandle) SEVENWORDINLINE(0x203C, 0x1009, 0x0038, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) FlattenPaperTypeToResource (gxPaperType thePaperType, Handle * resHandle) SEVENWORDINLINE(0x203C, 0x1009, 0x003C, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) UnflattenPaperTypeFromResource (gxPaperType thePaperType, Handle resHandle) SEVENWORDINLINE(0x203C, 0x1009, 0x0040, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) FlattenPrinter (gxPrinter thePrinter, GXPrintingFlattenUPP flattenProc, void * refCon) SEVENWORDINLINE(0x203C, 0x1009, 0x0044, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) UnflattenPrinter (gxPrinter thePrinter, GXPrintingFlattenUPP flattenProc, void * refCon) SEVENWORDINLINE(0x203C, 0x1009, 0x0048, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) FlattenObjectToHdl (void * object, GXCoreObjectFlattenUPP flattenProc, Handle * destHandle) SEVENWORDINLINE(0x203C, 0x1009, 0x004C, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) UnflattenObjectFromHdl (void * object, GXCoreObjectFlattenUPP flattenProc, Handle srcHandle) SEVENWORDINLINE(0x203C, 0x1009, 0x0050, 0x2078, 0x0948, 0x2050, 0x4E90); /* Old API Routines: 'pmgr' ID #10*/ EXTERN_API( TPPrPort ) PrOpenDoc_PrGlueEntry (THPrint hPrint, TPPrPort pPrPort, Ptr ioBuffPtr) SEVENWORDINLINE(0x203C, 0x100A, 0x0004, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API( void ) PrCloseDoc_PrGlueEntry (TPPrPort pPrPort) SEVENWORDINLINE(0x203C, 0x100A, 0x0008, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API( void ) PrOpenPage_PrGlueEntry (TPPrPort pPrPort, TPRect pPageFrame) SEVENWORDINLINE(0x203C, 0x100A, 0x000C, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API( void ) PrClosePage_PrGlueEntry (TPPrPort pPrPort) SEVENWORDINLINE(0x203C, 0x100A, 0x0010, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API( void ) PrintDefault_PrGlueEntry (THPrint hPrint) SEVENWORDINLINE(0x203C, 0x100A, 0x0014, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API( Boolean ) PrStlDialog_PrGlueEntry (THPrint hPrint) SEVENWORDINLINE(0x203C, 0x100A, 0x0018, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API( Boolean ) PrJobDialog_PrGlueEntry (THPrint hPrint) SEVENWORDINLINE(0x203C, 0x100A, 0x001C, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API( TPPrDlgRef ) PrStlInit_PrGlueEntry (THPrint hPrint) SEVENWORDINLINE(0x203C, 0x100A, 0x0020, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API( TPPrDlgRef ) PrJobInit_PrGlueEntry (THPrint hPrint) SEVENWORDINLINE(0x203C, 0x100A, 0x0024, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API( Boolean ) PrDlgMain_PrGlueEntry (THPrint hPrint, PDlgInitUPP pDlgInit) SEVENWORDINLINE(0x203C, 0x100A, 0x0028, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API( Boolean ) PrValidate_PrGlueEntry (THPrint hPrint) SEVENWORDINLINE(0x203C, 0x100A, 0x002C, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API( void ) PrJobMerge_PrGlueEntry (THPrint hPrintSrc, THPrint hPrintDst) SEVENWORDINLINE(0x203C, 0x100A, 0x0030, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API( void ) PrPicFile_PrGlueEntry (THPrint hPrint, TPPrPort pPrPort, Ptr pIOBuf, Ptr pDevBuf, TPPrStatus prStatus) SEVENWORDINLINE(0x203C, 0x100A, 0x0034, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API( void ) Hack_PrGlueEntry (void) SEVENWORDINLINE(0x203C, 0x100A, 0x0038, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API( void ) PrGeneral_PrGlueEntry (Ptr pData) SEVENWORDINLINE(0x203C, 0x100A, 0x003C, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) OldAPIInit (gxGraphicsClient client, gxJob * pJob) SEVENWORDINLINE(0x203C, 0x100A, 0x0040, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) OldAPIExit (gxGraphicsClient * client) SEVENWORDINLINE(0x203C, 0x100A, 0x0044, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DoGXConvertPrintRecordTo (THPrint hPrint) SEVENWORDINLINE(0x203C, 0x100A, 0x0048, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DoGXConvertPrintRecordFrom (THPrint hPrint) SEVENWORDINLINE(0x203C, 0x100A, 0x004C, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DoGXPrintRecordToJob (THPrint hPrint, gxJob destJob) SEVENWORDINLINE(0x203C, 0x100A, 0x0050, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) GetCompatibilityFlags (TCompatibilityFlags * compatFlags) SEVENWORDINLINE(0x203C, 0x100A, 0x0054, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) OldAPIGlueEntry (void) SEVENWORDINLINE(0x203C, 0x100A, 0x0058, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) OldAPIGlueExit (void) SEVENWORDINLINE(0x203C, 0x100A, 0x005C, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) GetOldAPIA5 (long * a5) SEVENWORDINLINE(0x203C, 0x100A, 0x0060, 0x2078, 0x0948, 0x2050, 0x4E90); /* List Handler Routines: 'tckl' ID #0 currently empty. */ /* File Handler Routines: 'tckl' ID #1*/ EXTERN_API_C( OSErr ) FHNewFileReference (TFile * fileRef) SEVENWORDINLINE(0x203C, 0x2001, 0x0004, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) FHDisposeFileReference (TFile fileRef) SEVENWORDINLINE(0x203C, 0x2001, 0x0008, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) FHGetBufferSize (TFile fileRef, long * pBufferSize) SEVENWORDINLINE(0x203C, 0x2001, 0x000C, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) FHSetBufferSize (TFile fileRef, long bufferSize) SEVENWORDINLINE(0x203C, 0x2001, 0x0010, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) FHGetFileRefCon (TFile fileRef, void ** pRefCon) SEVENWORDINLINE(0x203C, 0x2001, 0x0014, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) FHSetFileRefCon (TFile fileRef, void * refCon) SEVENWORDINLINE(0x203C, 0x2001, 0x0018, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) FHGetFileData (TFile fileRef, FHFileDataPtr pFileData) SEVENWORDINLINE(0x203C, 0x2001, 0x001C, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) FHCreateFile (TFile fileRef, FSSpecPtr pFileSpec, Boolean uniqueName) SEVENWORDINLINE(0x203C, 0x2001, 0x0020, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) FHOpenFile (TFile fileRef, FSSpecPtr pFileSpec, char ioPermssn) SEVENWORDINLINE(0x203C, 0x2001, 0x0024, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) FHCloseFile (TFile fileRef, Boolean doFlush) SEVENWORDINLINE(0x203C, 0x2001, 0x0028, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) FHDeleteFile (TFile fileRef) SEVENWORDINLINE(0x203C, 0x2001, 0x002C, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) FHGetFilePos (TFile fileRef, long * pFilePos) SEVENWORDINLINE(0x203C, 0x2001, 0x0030, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) FHSetFilePos (TFile fileRef, short posMode, long fileOffset) SEVENWORDINLINE(0x203C, 0x2001, 0x0034, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) FHGetEOF (TFile fileRef, long * pEOF) SEVENWORDINLINE(0x203C, 0x2001, 0x0038, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) FHSetEOF (TFile fileRef, long newEOF) SEVENWORDINLINE(0x203C, 0x2001, 0x003C, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) FHRead (TFile fileRef, void * pBuffer, long * pLength) SEVENWORDINLINE(0x203C, 0x2001, 0x0040, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) FHWrite (TFile fileRef, void * pBuffer, long * pLength) SEVENWORDINLINE(0x203C, 0x2001, 0x0044, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) FHGetFinderTypes (TFile fileRef, OSType * pCreatorType, OSType * pFileType) SEVENWORDINLINE(0x203C, 0x2001, 0x0048, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) FHSetFinderTypes (TFile fileRef, OSType creatorType, OSType fileType) SEVENWORDINLINE(0x203C, 0x2001, 0x004C, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) FHAddResource (TFile fileRef, Handle theResource, ResType theType, short theID) SEVENWORDINLINE(0x203C, 0x2001, 0x0050, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) FHGetResource (TFile fileRef, ResType theType, short theID, Handle * pTheResource) SEVENWORDINLINE(0x203C, 0x2001, 0x0054, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) FHChangedResource (TFile fileRef, Handle theResource) SEVENWORDINLINE(0x203C, 0x2001, 0x0058, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) FHReleaseResource (TFile fileRef, Handle theResource) SEVENWORDINLINE(0x203C, 0x2001, 0x005C, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) FHDetachResource (TFile fileRef, Handle theResource) SEVENWORDINLINE(0x203C, 0x2001, 0x0060, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) FHRemoveResource (TFile fileRef, Handle theResource) SEVENWORDINLINE(0x203C, 0x2001, 0x0064, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) FHCopyResources (TFile sourceFileRef, TFile destinationFileRef) SEVENWORDINLINE(0x203C, 0x2001, 0x0068, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) FHMakeAlias (TFile target, FSSpecPtr pAliasSpec, Boolean uniqueName) SEVENWORDINLINE(0x203C, 0x2001, 0x006C, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) FHOpenAlias (TFile fileRef, char ioPermssn) SEVENWORDINLINE(0x203C, 0x2001, 0x0070, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) FHFlushToDisk (TFile fileRef) SEVENWORDINLINE(0x203C, 0x2001, 0x0074, 0x2078, 0x0948, 0x2050, 0x4E90); /* Spooling Handler Routines: 'tckl' ID #2*/ EXTERN_API_C( OSErr ) SHCreateSpoolFile (FSSpecPtr pFileSpec, gxJob theJob, SHFlags theOptions, gxSpoolFile * pFileRef) SEVENWORDINLINE(0x203C, 0x2002, 0x0004, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) SHDespoolJob (FSSpecPtr pFileSpec, gxJob theJob) SEVENWORDINLINE(0x203C, 0x2002, 0x0008, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) SHOpenSpoolFile (FSSpecPtr pFileSpec, char ioPermssn, Boolean useMessaging, gxJob theJob, SHFlags theOptions, gxSpoolFile * pFileRef) SEVENWORDINLINE(0x203C, 0x2002, 0x000C, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) SHCloseSpoolFile (gxSpoolFile fileRef, SHFlags theOptions, Boolean useMessaging) SEVENWORDINLINE(0x203C, 0x2002, 0x0010, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) SHDeleteSpoolFile (gxSpoolFile fileRef) SEVENWORDINLINE(0x203C, 0x2002, 0x0014, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) SHResurrectSpoolFile (FSSpecPtr pFileSpec) SEVENWORDINLINE(0x203C, 0x2002, 0x0018, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) SHSpoolPage (gxSpoolFile fileRef, Boolean useMessaging, gxFormat theFormat, gxShape thePage) SEVENWORDINLINE(0x203C, 0x2002, 0x001C, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) SHDespoolPage (gxSpoolFile fileRef, long pageNum, long viewPortListCount, gxViewPort * viewPortList, Boolean useMessaging, gxFormat theFormat, gxShape * pThePage, Boolean * formatChanged) SEVENWORDINLINE(0x203C, 0x2002, 0x0020, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) SHGetJob (gxSpoolFile fileRef, gxJob * pJob) SEVENWORDINLINE(0x203C, 0x2002, 0x0024, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) SHCountPages (gxSpoolFile fileRef, long * pNumPages) SEVENWORDINLINE(0x203C, 0x2002, 0x0028, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) SHGetSpoolFileRefCon (gxSpoolFile fileRef, void ** pRefCon) SEVENWORDINLINE(0x203C, 0x2002, 0x002C, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) SHSetSpoolFileRefCon (gxSpoolFile fileRef, void * refCon) SEVENWORDINLINE(0x203C, 0x2002, 0x0030, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) SHGetFormatDirectory (gxSpoolFile fileRef, SpoolFileFormatDirHdl * pFormatDirHdl) SEVENWORDINLINE(0x203C, 0x2002, 0x0034, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) SHGetPageDirectory (gxSpoolFile fileRef, SpoolFilePageDirHdl * pPageDirHdl) SEVENWORDINLINE(0x203C, 0x2002, 0x0038, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) SHGetFontDbase (gxSpoolFile fileRef, TFontDbase * fontDbase, Boolean * use8BitMacEncoding) SEVENWORDINLINE(0x203C, 0x2002, 0x003C, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) SHGetPictCollection (gxSpoolFile fileRef, Collection * pPictCollection) SEVENWORDINLINE(0x203C, 0x2002, 0x0040, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) SHEncodeQDOffset (gxSpoolFile fileRef, long pageIndex, long * pFileOffset) SEVENWORDINLINE(0x203C, 0x2002, 0x0044, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) SHDecodeQDOffset (gxSpoolFile fileRef, long pageIndex, long * pFileOffset) SEVENWORDINLINE(0x203C, 0x2002, 0x0048, 0x2078, 0x0948, 0x2050, 0x4E90); /* Buffer Handler Routines: 'tckl' ID #3*/ EXTERN_API_C( OSErr ) GBAllocateBuffers (short * nBuffers, long bufferSize, TGBMap * buffMap) SEVENWORDINLINE(0x203C, 0x2003, 0x0004, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) GBDeAllocateBuffers (TGBMap buffMap) SEVENWORDINLINE(0x203C, 0x2003, 0x0008, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) GBBufferData (Ptr data, long size, TGBMap buffMap, long bufferOptions) SEVENWORDINLINE(0x203C, 0x2003, 0x000C, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) GBFlushCurrBuffer (TGBMap buffMap) SEVENWORDINLINE(0x203C, 0x2003, 0x0010, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) GBWaitForIO (TGBMap buffMap) SEVENWORDINLINE(0x203C, 0x2003, 0x0014, 0x2078, 0x0948, 0x2050, 0x4E90); /* Currently unused: 'tckl' ID #4*/ /* Shape Utilities Routines: 'tckl' ID #5*/ EXTERN_API_C( OSErr ) ShUDissectGlyphs (gxShape theShape, Boolean splitByStyle) SEVENWORDINLINE(0x203C, 0x2005, 0x0004, 0x2078, 0x0948, 0x2050, 0x4E90); typedef CALLBACK_API_C( OSErr , gxCountFunct )(gxShape aShape, long contour, long *numPoints); typedef STACK_UPP_TYPE(gxCountFunct) gxCountFunctUPP; enum { uppgxCountFunctProcInfo = 0x00000FE1 }; /* 2_bytes Func(4_bytes, 4_bytes, 4_bytes) */ #define NewgxCountFunctProc(userRoutine) (gxCountFunctUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppgxCountFunctProcInfo, GetCurrentArchitecture()) #define CallgxCountFunctProc(userRoutine, aShape, contour, numPoints) CALL_THREE_PARAMETER_UPP((userRoutine), uppgxCountFunctProcInfo, (aShape), (contour), (numPoints)) EXTERN_API_C( OSErr ) ShUDissectPath (gxShape theShape, long limit, Boolean splitH, gxCountFunct aFunct) SEVENWORDINLINE(0x203C, 0x2005, 0x0008, 0x2078, 0x0948, 0x2050, 0x4E90); /* UnivDialog Handler Routines: 'tckl' ID #6*/ EXTERN_API_C( OSErr ) UnivDlgSetUp (short dlogID, short dctlID, short nestindx, THPrint printHdl, TPPrDlg * dlg) SEVENWORDINLINE(0x203C, 0x2006, 0x0004, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) UnivDlgAddPapr2SizeList (Handle * sizeListHdl, short * count) SEVENWORDINLINE(0x203C, 0x2006, 0x0008, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) UnivDlgMatchPaprSize (THPrint univPrintHdl, Handle sizeListHdl, short * index) SEVENWORDINLINE(0x203C, 0x2006, 0x000C, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) UnivDlgSetPaprSize (THPrint univPrintHdl, Handle sizeListHdl, short paprIndx) SEVENWORDINLINE(0x203C, 0x2006, 0x0010, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) UnivUDisposUnivMem (DialogPtr dPtr) SEVENWORDINLINE(0x203C, 0x2006, 0x0014, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) UnivDlgFlushPapr2SizeListCache (void) SEVENWORDINLINE(0x203C, 0x2006, 0x0018, 0x2078, 0x0948, 0x2050, 0x4E90); /* Configfile Handler Routines: 'tckl' ID #7*/ EXTERN_API_C( OSErr ) DCCreateDTP (Str31 DTPName) SEVENWORDINLINE(0x203C, 0x2007, 0x0004, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DCDeleteDTP (Str31 DTPName) SEVENWORDINLINE(0x203C, 0x2007, 0x0008, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DCGetDTPs (DTPUPP clientProc, void * refCon, short * numDTPs) SEVENWORDINLINE(0x203C, 0x2007, 0x000C, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DCIsDesktopPrinter (Str31 DTPName, Boolean * yupNope) SEVENWORDINLINE(0x203C, 0x2007, 0x0010, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DCReadRes (Str31 DTPName, ResType theType, short theID, Handle * theData) SEVENWORDINLINE(0x203C, 0x2007, 0x0014, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DCReadIndRes (Str31 DTPName, ResType theType, short theIndex, Handle * theData) SEVENWORDINLINE(0x203C, 0x2007, 0x0018, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DCWriteRes (Str31 DTPName, ResType theType, short theID, Handle theData) SEVENWORDINLINE(0x203C, 0x2007, 0x001C, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DCRemoveRes (Str31 DTPName, ResType theType, short theID) SEVENWORDINLINE(0x203C, 0x2007, 0x0020, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DCCheckResExist (Str31 DTPName, ResType theType, short theID, Boolean * resExists) SEVENWORDINLINE(0x203C, 0x2007, 0x0024, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DCOpenResFile (Str31 DTPName, char permission, short * refNum) SEVENWORDINLINE(0x203C, 0x2007, 0x0028, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DCGetModificationDate (Str31 DTPName, long * theDate) SEVENWORDINLINE(0x203C, 0x2007, 0x002C, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DCSetTrayPaperType (Str31 printerName, gxTrayIndex trayNumber, gxPaperType thePaperType) SEVENWORDINLINE(0x203C, 0x2007, 0x0030, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DCGetTrayPaperType (Str31 printerName, gxTrayIndex trayNumber, gxPaperType thePaperType) SEVENWORDINLINE(0x203C, 0x2007, 0x0034, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DCIsDefaultTrayMappingSet (Str31 printerName, Boolean * isItSet) SEVENWORDINLINE(0x203C, 0x2007, 0x0038, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DCRemoveTrayResources (Str31 printerName) SEVENWORDINLINE(0x203C, 0x2007, 0x003C, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DCGetDTPFileID (Str31 printerName, long * pFileID) SEVENWORDINLINE(0x203C, 0x2007, 0x0040, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DCCleanup (void) SEVENWORDINLINE(0x203C, 0x2007, 0x0044, 0x2078, 0x0948, 0x2050, 0x4E90); /* Status Handler Routines: 'tckl' ID #8*/ EXTERN_API_C( OSErr ) PrInitStatus (void) SEVENWORDINLINE(0x203C, 0x2008, 0x0004, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) PrCleanupStatus (void) SEVENWORDINLINE(0x203C, 0x2008, 0x0008, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) PrCallModalStatus (StatusRecordPtr statPtr) SEVENWORDINLINE(0x203C, 0x2008, 0x000C, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) PrCallMoveableStatus (StatusRecordPtr statPtr) SEVENWORDINLINE(0x203C, 0x2008, 0x0010, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) ReportJobStatus (StatusRecordPtr statPtr) SEVENWORDINLINE(0x203C, 0x2008, 0x0014, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) WriteToDTPWindow (StatusRecordPtr statPtr, gxDisplayRecord * pDisplay) SEVENWORDINLINE(0x203C, 0x2008, 0x0018, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DoAlertStatus (StatusRecordPtr statPtr) SEVENWORDINLINE(0x203C, 0x2008, 0x001C, 0x2078, 0x0948, 0x2050, 0x4E90); /* Printing Alert Routines: 'tckl' ID #9*/ EXTERN_API_C( OSErr ) WayCoolAlert (short iconId, short txtSize, short defaultTitleNum, short cancelTitleNum, short textLength, Ptr pAlertMsg, StringPtr actionTitle, StringPtr title2, StringPtr title3, StringPtr msgFont, ModalFilterProcPtr filterProc, short * itemHit, StringPtr alertTitle) SEVENWORDINLINE(0x203C, 0x2009, 0x0004, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) GetWayCoolAlert (short coolResId, ModalFilterProcPtr filterProc, short * itemHit) SEVENWORDINLINE(0x203C, 0x2009, 0x0008, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) SetupCoolAlert (TCoolHandle hCool, DialogPtr * pCoolAlert, TButtonRecord * buttonRecord) SEVENWORDINLINE(0x203C, 0x2009, 0x000C, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) WayCoolDefaultAlert (short iconId, short txtSize, short defaultTitleNum, short cancelTitleNum, short textLength, Ptr pAlertMsg, StringPtr actionTitle, StringPtr title2, StringPtr title3, StringPtr msgFont, ModalFilterProcPtr filterProc, short * itemHit) SEVENWORDINLINE(0x203C, 0x2009, 0x0010, 0x2078, 0x0948, 0x2050, 0x4E90); /* Dialog Handler Setup Routines: 'tckl' ID #10*/ EXTERN_API_C( OSErr ) DlgInit (void) SEVENWORDINLINE(0x203C, 0x200A, 0x0004, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DlgCleanUp (void) SEVENWORDINLINE(0x203C, 0x200A, 0x0008, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DlgDisableScaling (void) SEVENWORDINLINE(0x203C, 0x200A, 0x000C, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DlgEnableScaling (void) SEVENWORDINLINE(0x203C, 0x200A, 0x0010, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DlgSetEditMenuRecord (gxEditMenuRecord * editMenuRec) SEVENWORDINLINE(0x203C, 0x200A, 0x0014, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DlgSetupPanel (PanelSetupPtr panelSetup, MessageHandler msgHandler, TPrintingClient printClient) SEVENWORDINLINE(0x203C, 0x200A, 0x0018, 0x2078, 0x0948, 0x2050, 0x4E90); /* Dialog Handler Panel Routines: 'tckl' ID #11*/ EXTERN_API_C( OSErr ) RetrieveCollation (gxJob theJob, Boolean * collate, Boolean * collationLocked) SEVENWORDINLINE(0x203C, 0x200B, 0x0004, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) RetrieveCopies (gxJob theJob, long * numCopies, Boolean * copiesLocked) SEVENWORDINLINE(0x203C, 0x200B, 0x0008, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) RetrieveDefaultBinMapping (gxJob theJob, Boolean * doNormalPrinting, char * howToMapPaper, short * binToMapTo, gxPaperType paperToMapTo) SEVENWORDINLINE(0x203C, 0x200B, 0x000C, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) RetrieveDestination (gxJob theJob, Boolean * printToAFile, Boolean * destLocked) SEVENWORDINLINE(0x203C, 0x200B, 0x0010, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) RetrieveDestinationSettings (gxJob theJob, gxPrintDestinationPtr printDestination) SEVENWORDINLINE(0x203C, 0x200B, 0x0014, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) RetrieveFileFormat (gxJob theJob, Str31 fileFormatPtr, Boolean * filefmtLocked) SEVENWORDINLINE(0x203C, 0x200B, 0x0018, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) RetrieveFileSpec (gxJob theJob, FSSpec * fSpec, Boolean * specLocked) SEVENWORDINLINE(0x203C, 0x200B, 0x001C, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) RetrieveFontsInFile (gxJob theJob, char * fIncludeFonts, Boolean * includeFontsLocked) SEVENWORDINLINE(0x203C, 0x200B, 0x0020, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) RetrieveLastPaperFeed (gxJob theJob, Boolean * autoFeedOn, Boolean * feedLocked) SEVENWORDINLINE(0x203C, 0x200B, 0x0024, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) RetrieveManualFeedPaper (gxJob theJob, gxManualFeedInfo ** paperTypeNameList) SEVENWORDINLINE(0x203C, 0x200B, 0x0028, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) RetrievePageRangeInfo (gxJob theJob, Handle pageRangeHdl, Boolean * pageRangeLocked) SEVENWORDINLINE(0x203C, 0x200B, 0x002C, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) RetrievePaperFeed (gxJob theJob, Boolean * autoFeedOn, Boolean * feedLocked) SEVENWORDINLINE(0x203C, 0x200B, 0x0030, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) RetrieveQuality (gxJob theJob, Handle qPrefsHdl, Boolean * qualityLocked) SEVENWORDINLINE(0x203C, 0x200B, 0x0034, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) RetrieveScaleFactor (Fixed * theHorizontalScaleFactor, Fixed * theVerticalScaleFactor, gxFormat theFormat, Boolean * fScalingIsLocked) SEVENWORDINLINE(0x203C, 0x200B, 0x0038, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) RetrieveScaleRange (short * theMax, short * theMin, gxFormat theFormat) SEVENWORDINLINE(0x203C, 0x200B, 0x003C, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) RetrieveStartPanel (gxJob theJob, Str31 startPanelName, Boolean fPrint, Boolean * startPanelLocked) SEVENWORDINLINE(0x203C, 0x200B, 0x0040, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) UpdateCollation (gxJob theJob, Boolean collate) SEVENWORDINLINE(0x203C, 0x200B, 0x0044, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) UpdateCopies (gxJob theJob, long numCopies) SEVENWORDINLINE(0x203C, 0x200B, 0x0048, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) UpdateDefaultBinMapping (gxJob theJob, Boolean * doNormalPrinting, char * howToMapPaper, short * binToMapTo, gxPaperType paperToMapTo) SEVENWORDINLINE(0x203C, 0x200B, 0x004C, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) UpdateDestination (gxJob theJob, Boolean fToAFile, Boolean lockIt) SEVENWORDINLINE(0x203C, 0x200B, 0x0050, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) UpdateDestinationSettings (gxJob theJob, gxPrintDestinationPtr printDestination) SEVENWORDINLINE(0x203C, 0x200B, 0x0054, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) UpdateFileFormat (gxJob theJob, Str31 fileFormatPtr, Boolean lockIt) SEVENWORDINLINE(0x203C, 0x200B, 0x0058, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) UpdateFileSpec (gxJob theJob, FSSpec * fSpec, Boolean lockIt) SEVENWORDINLINE(0x203C, 0x200B, 0x005C, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) UpdateFontsInFile (gxJob theJob, char fIncludeFonts) SEVENWORDINLINE(0x203C, 0x200B, 0x0060, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) UpdateGeneralPrintSettings (gxJob theJob, TGeneralPrintSettingsPtr pSettings) SEVENWORDINLINE(0x203C, 0x200B, 0x0064, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) UpdateLastPaperFeed (gxJob theJob, Boolean autoFeedOn, Boolean feedLocked) SEVENWORDINLINE(0x203C, 0x200B, 0x0068, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) UpdateManualFeedPaper (gxJob theJob, gxManualFeedInfo * paperTypeNameList) SEVENWORDINLINE(0x203C, 0x200B, 0x006C, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) UpdatePageRangeInfo (gxJob theJob, Handle pageRangeHdl, Boolean pageRangeLocked) SEVENWORDINLINE(0x203C, 0x200B, 0x0070, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) UpdatePaperFeed (gxJob theJob, Boolean autoFeedOn, Boolean locked) SEVENWORDINLINE(0x203C, 0x200B, 0x0074, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) UpdateQuality (gxJob theJob, Handle qPrefs, Boolean qualityLocked) SEVENWORDINLINE(0x203C, 0x200B, 0x0078, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) UpdateScaleFactor (gxFormat theFormat, Fixed theHorizontalScaleFactor, Fixed theVerticalScaleFactor) SEVENWORDINLINE(0x203C, 0x200B, 0x007C, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) UpdateStartPanel (gxJob theJob, Str31 startPanelName, Boolean fPrint) SEVENWORDINLINE(0x203C, 0x200B, 0x0080, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) IsManualFeedPaperType (gxPaperType thePaperType, Boolean * IsManualFeed) SEVENWORDINLINE(0x203C, 0x200B, 0x0084, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) GetDocPaperNames (gxManualFeedInfo ** pNameList) SEVENWORDINLINE(0x203C, 0x200B, 0x0088, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) ProcessMMEvents (DialogPtr pDlg, EventRecord * theEvent, short * itemHit) SEVENWORDINLINE(0x203C, 0x200B, 0x008C, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) AppendBinNameToPaper (Str255 mergedString, Str31 paperTypeName, Str31 binName, Rect * rBounds) SEVENWORDINLINE(0x203C, 0x200B, 0x0090, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DlgSupportsDirectMode (char * directModeSupport) SEVENWORDINLINE(0x203C, 0x200B, 0x0094, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DlgDialogInProgress (Boolean * inProgress) SEVENWORDINLINE(0x203C, 0x200B, 0x0098, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DlgInAdvancedMode (Boolean * inAdvancedMode) SEVENWORDINLINE(0x203C, 0x200B, 0x009C, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DlgScalingDisabled (Boolean * scalingDisabled) SEVENWORDINLINE(0x203C, 0x200B, 0x00A0, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DlgScalingPanelNotLoaded (Boolean * notLoaded) SEVENWORDINLINE(0x203C, 0x200B, 0x00A4, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) HandleWriteToAFile (Boolean * fUserCancels, Boolean fromOldApp) SEVENWORDINLINE(0x203C, 0x200B, 0x00A8, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) ParseInteger (Boolean negativeOK, DialogPtr pDlg, short editItem, Boolean * validInteger) SEVENWORDINLINE(0x203C, 0x200B, 0x00AC, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DlgSetRadioButtons (DialogPtr pDialog, TDlgRange * dlgRange) SEVENWORDINLINE(0x203C, 0x200B, 0x00B0, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) RetrieveDefaultSetting (gxJob theJob, Boolean * useDefaults, Boolean * settingLocked) SEVENWORDINLINE(0x203C, 0x200B, 0x00B4, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) UpdateDefaultSetting (gxJob theJob, Boolean useDefaults) SEVENWORDINLINE(0x203C, 0x200B, 0x00B8, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) AddPaperFeedAlias (Str31 paperTypeName, long trayToFeedFrom, char specialMapping, Boolean wasManualFeed) SEVENWORDINLINE(0x203C, 0x200B, 0x00BC, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) RetrievePaperFeedAlias (Str31 paperTypeName, long * trayToFeedFrom, char * specialMapping) SEVENWORDINLINE(0x203C, 0x200B, 0x00C0, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) RetrieveManualFeedAlertSettings (long * mfSettings) SEVENWORDINLINE(0x203C, 0x200B, 0x00C4, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) PurgePaperFeedAliasByTray (gxTrayIndex whichTray) SEVENWORDINLINE(0x203C, 0x200B, 0x00C8, 0x2078, 0x0948, 0x2050, 0x4E90); /* Dialog Handler xdtl Routines: 'tckl' ID #12*/ EXTERN_API_C( OSErr ) LoadXdtl (TPDialogStore dialogStorage) SEVENWORDINLINE(0x203C, 0x200C, 0x0004, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) HandleXdtl (TPDialogStore dialogStorage, short itemHit, TPanelLinkPtr panelList) SEVENWORDINLINE(0x203C, 0x200C, 0x0008, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) HandleXdtlFilter (TPDialogStore dialogStorage, short * itemHit, Boolean * returnImmed) SEVENWORDINLINE(0x203C, 0x200C, 0x000C, 0x2078, 0x0948, 0x2050, 0x4E90); /* Dialog Handler Main Routines: 'tckl' ID #13*/ EXTERN_API_C( OSErr ) DlgConductFormatDialog (gxJob theJob, gxDialogResult * dialogResult, StringPtr dialogName, gxFormat theFormat) SEVENWORDINLINE(0x203C, 0x200D, 0x0004, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DlgConductJobFormatDialog (gxJob theJob, gxDialogResult * dialogResult) SEVENWORDINLINE(0x203C, 0x200D, 0x0008, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DlgConductPrintDialog (gxJob theJob, gxDialogResult * dialogResult) SEVENWORDINLINE(0x203C, 0x200D, 0x000C, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DlgDisposeDialogAllocations (void) SEVENWORDINLINE(0x203C, 0x200D, 0x0010, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DlgFormatByPage (Boolean * wasCalledByGXFormatDialog) SEVENWORDINLINE(0x203C, 0x200D, 0x0014, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DlgGetPanelDimensions (Rect * panelArea) SEVENWORDINLINE(0x203C, 0x200D, 0x0018, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) VCDisposeValidationCache (void) SEVENWORDINLINE(0x203C, 0x200D, 0x001C, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) VCAddCacheItem (StringPtr str, CollectionTag tag) SEVENWORDINLINE(0x203C, 0x200D, 0x0020, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) VCDeleteCacheItem (StringPtr str, CollectionTag tag) SEVENWORDINLINE(0x203C, 0x200D, 0x0024, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) VCValidateCacheItem (StringPtr str, CollectionTag tag, Boolean * found) SEVENWORDINLINE(0x203C, 0x200D, 0x0028, 0x2078, 0x0948, 0x2050, 0x4E90); /* Async I/O Handler Routines: 'tckl' ID #14*/ EXTERN_API_C( OSErr ) HIOInit (UInt16 numIORqstBlks) SEVENWORDINLINE(0x203C, 0x200E, 0x0004, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) HIOShutdown (void) SEVENWORDINLINE(0x203C, 0x200E, 0x0008, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) HIOOpenConn (ECommProtocolType * protocolType, Boolean isAsync, UInt16 * connRefnum, ProtocolFilterUPP rsrcFilterProc, UInt32 procRefCon, UInt32 timeout) SEVENWORDINLINE(0x203C, 0x200E, 0x000C, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) HIOCloseConn (Boolean killPendingIOs, UInt32 closeTimeout) SEVENWORDINLINE(0x203C, 0x200E, 0x0010, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) HIOReceiveChar (UInt32 ioAttributes, Ptr rcvdChar, UInt32 rcvTimeout, UInt16 * numRcvd, UInt16 * requestID) SEVENWORDINLINE(0x203C, 0x200E, 0x0014, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) HIOSendChar (UInt32 ioAttributes, char charToSend, UInt32 sendTimeout, UInt16 * requestID) SEVENWORDINLINE(0x203C, 0x200E, 0x0018, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) HIOReceiveBuffer (UInt32 ioAttributes, Ptr rcvBuffer, UInt32 * numToRcv, UInt32 rcvTimeout, UInt16 * requestID, SInt8 msgType) SEVENWORDINLINE(0x203C, 0x200E, 0x001C, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) HIOSendBuffer (UInt32 ioAttributes, Ptr sendBuffer, UInt32 * numToSend, UInt32 sendTimeout, UInt16 * requestID, SInt8 msgType) SEVENWORDINLINE(0x203C, 0x200E, 0x0020, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) HIOStatusConn (UInt32 ioAttributes, Ptr cmndBuffer, UInt32 * cmndSize, Ptr responseBuffer, UInt32 * responseSize, StringPtr termBytes, UInt32 statusTimeout, UInt16 * requestID) SEVENWORDINLINE(0x203C, 0x200E, 0x0024, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) HIOControlConn (UInt32 ioAttributes, Ptr cmndBuffer, UInt32 * cmndSize, Ptr responseBuffer, UInt32 * responseSize, UInt32 controlTimeout, UInt16 * requestID) SEVENWORDINLINE(0x203C, 0x200E, 0x0028, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) HIOTask (Boolean * ioCompleted, HIORqstRsltPtr ioResult, UInt16 requestID) SEVENWORDINLINE(0x203C, 0x200E, 0x002C, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) HIOGetProtocolData (ECommProtocolType commType, Handle * protocolData) SEVENWORDINLINE(0x203C, 0x200E, 0x0030, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) HIOKillRequest (UInt16 requestID, HIORqstRsltPtr ioResult) SEVENWORDINLINE(0x203C, 0x200E, 0x0034, 0x2078, 0x0948, 0x2050, 0x4E90); /* Users & Groups Routines: 'tckl' ID #15*/ EXTERN_API_C( OSErr ) UGOpenFile (UserGroupPBPtr thePB, Boolean async) SEVENWORDINLINE(0x203C, 0x200F, 0x0004, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) UGCloseFile (UserGroupPBPtr thePB, Boolean async) SEVENWORDINLINE(0x203C, 0x200F, 0x0008, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) UGGetUserInfo (UserGroupPBPtr thePB, Boolean async) SEVENWORDINLINE(0x203C, 0x200F, 0x000C, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) UGGetUserPwd (UserGroupPBPtr thePB, Boolean async) SEVENWORDINLINE(0x203C, 0x200F, 0x0010, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) UGSetUserInfo (UserGroupPBPtr thePB, Boolean async) SEVENWORDINLINE(0x203C, 0x200F, 0x0014, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) UGGetGroupInfo (UserGroupPBPtr thePB, Boolean async) SEVENWORDINLINE(0x203C, 0x200F, 0x0018, 0x2078, 0x0948, 0x2050, 0x4E90); /* Dev. Comm. Client Routines: 'tckl' ID #16*/ EXTERN_API_C( OSErr ) LookupRemoteDevice (gxJob theJob, Ptr nbpEntity, unsigned long lastAddress, unsigned long requestID, TLookupPtr * lookupPtr) SEVENWORDINLINE(0x203C, 0x2010, 0x0004, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) LookupRemoteIdle (gxJob theJob, TLookupPtr lookupPtr) SEVENWORDINLINE(0x203C, 0x2010, 0x0008, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) ClientKillLookup (gxJob theJob, TLookupPtr lookupPtr) SEVENWORDINLINE(0x203C, 0x2010, 0x000C, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) ClientIdle (gxJob theJob, ClientPtr theClient) SEVENWORDINLINE(0x203C, 0x2010, 0x0010, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) ClientResetConnection (gxJob theJob, ClientPtr theClient, Boolean forceReset) SEVENWORDINLINE(0x203C, 0x2010, 0x0014, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) ClientOpenConnection (gxJob theJob, ClientPtr * theClient, unsigned long serverAddr) SEVENWORDINLINE(0x203C, 0x2010, 0x0018, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) ClientCloseConnection (gxJob theJob, ClientPtr theClient) SEVENWORDINLINE(0x203C, 0x2010, 0x001C, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) ClientAbortRequest (gxJob theJob, ClientPtr theClient) SEVENWORDINLINE(0x203C, 0x2010, 0x0020, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) ClientAuthenticate (gxJob theJob, ClientPtr theClient, LogonDialogPtr theInfo, Boolean useNoPwdUAM) SEVENWORDINLINE(0x203C, 0x2010, 0x0024, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) ClientChangePassword (gxJob theJob, ClientPtr theClient, UAMType theUAM, Str31 userName, Str31 oldPassword, Str31 newPassword) SEVENWORDINLINE(0x203C, 0x2010, 0x0028, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) ClientGetServerInfo (gxJob theJob, ClientPtr theClient, ServerInfoPtr infoPtr, long magicCookie) SEVENWORDINLINE(0x203C, 0x2010, 0x002C, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) ClientGetQueueState (gxJob theJob, ClientPtr theClient, long queueID, long magicCookie) SEVENWORDINLINE(0x203C, 0x2010, 0x0030, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) ClientSetQueueState (gxJob theJob, ClientPtr theClient, long queueID, long magicCookie, unsigned long queueState) SEVENWORDINLINE(0x203C, 0x2010, 0x0034, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) ClientGetDeviceStatus (gxJob theJob, ClientPtr theClient, long queueID, long deviceID, long magicCookie) SEVENWORDINLINE(0x203C, 0x2010, 0x0038, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) ClientSetDeviceStatus (gxJob theJob, ClientPtr theClient, long queueID, long deviceID, long magicCookie, long remoteJobID, gxStatusRecord * theStatus) SEVENWORDINLINE(0x203C, 0x2010, 0x003C, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) ClientGetJobList (gxJob theJob, ClientPtr theClient, long queueID, long deviceID, long magicCookie) SEVENWORDINLINE(0x203C, 0x2010, 0x0040, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) ClientGetJobInfo (gxJob theJob, ClientPtr theClient, long queueID, long deviceID, long fileID, long magicCookie) SEVENWORDINLINE(0x203C, 0x2010, 0x0044, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) ClientSetJobInfo (gxJob theJob, ClientPtr theClient, long queueID, long deviceID, long remoteJobID, long magicCookie, long priority, unsigned long timeToPrint, long jobTimeout, long firstPageToPrint, long numCopies, long jobAlert) SEVENWORDINLINE(0x203C, 0x2010, 0x0048, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) ClientSendFile (gxJob theJob, ClientPtr theClient, gxSpoolFile theSpoolFile, long * jobID, long * deviceID, long * queueID, Boolean * continueImaging) SEVENWORDINLINE(0x203C, 0x2010, 0x004C, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) ClientDeleteFile (gxJob theJob, ClientPtr theClient, long queueID, long deviceID, long remoteJobID) SEVENWORDINLINE(0x203C, 0x2010, 0x0050, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) NewRemotePing (gxJob theJob, TPingPtr * pingPtr) SEVENWORDINLINE(0x203C, 0x2010, 0x0054, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) DisposeRemotePing (gxJob theJob, TPingPtr pingPtr) SEVENWORDINLINE(0x203C, 0x2010, 0x0058, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) PingRemoteDevice (gxJob theJob, TPingPtr pingPtr, long requestID, unsigned long serverAddr, long queueID) SEVENWORDINLINE(0x203C, 0x2010, 0x005C, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) PingRemoteIdle (gxJob theJob, TPingPtr pingPtr) SEVENWORDINLINE(0x203C, 0x2010, 0x0060, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) ClientKillPing (gxJob theJob, TPingPtr pingPtr) SEVENWORDINLINE(0x203C, 0x2010, 0x0064, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) ClientOpenRemoteDevice (gxJob theJob, GlobalConnectionRec * theSharedConnection, unsigned long addrHint) SEVENWORDINLINE(0x203C, 0x2010, 0x0068, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) ClientGetDeviceInfoList (gxJob theJob, ClientPtr theClient, long queueID, long deviceID, long magicCookie) SEVENWORDINLINE(0x203C, 0x2010, 0x006C, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) ClientGetDeviceInfo (gxJob theJob, ClientPtr theClient, long queueID, long deviceID, long magicCookie, ResType infoType, unsigned long infoID) SEVENWORDINLINE(0x203C, 0x2010, 0x0070, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) ClientSendData (gxJob theJob, ClientPtr theClient, Ptr dataToSend, long amountToSend, Boolean isEOM, Boolean waitAfter) SEVENWORDINLINE(0x203C, 0x2010, 0x0074, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) ClientRecvData (gxJob theJob, ClientPtr theClient, Ptr readHere, Size amountToRead) SEVENWORDINLINE(0x203C, 0x2010, 0x0078, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) ClientSyncDTP (gxJob theJob) SEVENWORDINLINE(0x203C, 0x2010, 0x007C, 0x2078, 0x0948, 0x2050, 0x4E90); /* Dev. Comm. Shared Main Routines: 'tckl' ID #17*/ EXTERN_API_C( OSErr ) SACheckConnection (ConnectionPtr cPtr) SEVENWORDINLINE(0x203C, 0x2011, 0x0004, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) SAResetConnection (ConnectionPtr cPtr, Boolean forceReset) SEVENWORDINLINE(0x203C, 0x2011, 0x0008, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) SAResetBuffers (ConnectionPtr cPtr) SEVENWORDINLINE(0x203C, 0x2011, 0x000C, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) SAAllocateBuffers (ConnectionPtr cPtr, Size sendSize, Size recvSize, Boolean sysHeap) SEVENWORDINLINE(0x203C, 0x2011, 0x0010, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) SAReleaseBuffers (ConnectionPtr cPtr) SEVENWORDINLINE(0x203C, 0x2011, 0x0014, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) SAVerifyMessage (short attnCode, Ptr msgPtr, short msgSize) SEVENWORDINLINE(0x203C, 0x2011, 0x0018, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) SASendAEToFinder (Ptr dataPtr, Size dataSize) SEVENWORDINLINE(0x203C, 0x2011, 0x001C, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) SAPrepPFEEventHeader (long eventType, long eventClass, long requestID, OSErr replyResult, Str31 queueName, PFEEvent * theEvent, Size * theSize) SEVENWORDINLINE(0x203C, 0x2011, 0x0020, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) SAPrepPFEStatusEvent (long queueID, long deviceID, long magicCookie, long userCount, unsigned long queueState, long fileID, long curPage, Fixed percentage, gxStatusRecord * curStatus, Size statusSize, PFEEvent * theEvent, Size * theSize) SEVENWORDINLINE(0x203C, 0x2011, 0x0024, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) SAGetATInfo (AddrBlock * homeAddr, AddrBlock * routerAddr, NetRange * homeNet, StringPtr zoneName, Ptr * nteQueue, Boolean * extendedNet) SEVENWORDINLINE(0x203C, 0x2011, 0x0028, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) SARandomFill (RandomNumber * data) SEVENWORDINLINE(0x203C, 0x2011, 0x002C, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) SAEncrypt (RandomNumber * data, Str31 key) SEVENWORDINLINE(0x203C, 0x2011, 0x0030, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) SADecrypt (RandomNumber * data, Str31 key) SEVENWORDINLINE(0x203C, 0x2011, 0x0034, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) SAEqualRandnums (long * randomBlock1, long * randomBlock2) SEVENWORDINLINE(0x203C, 0x2011, 0x0038, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) SAAddDTPRsrc (PSPParameterPtr rsrc) SEVENWORDINLINE(0x203C, 0x2011, 0x003C, 0x2078, 0x0948, 0x2050, 0x4E90); /* Dev. Comm. Shared ISR Routines: 'tckl' ID #18*/ EXTERN_API_C( OSErr ) SAIdle (ConnectionPtr cPtr, WaitUPP idleProc) SEVENWORDINLINE(0x203C, 0x2012, 0x0004, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) SAWaitForIt (OSErr * resultPtr, WaitUPP idleProc) SEVENWORDINLINE(0x203C, 0x2012, 0x0008, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) SAInitConnection (ConnectionPtr cPtr, short adspDrvRfNm, unsigned short localSocket, WaitUPP idleProc) SEVENWORDINLINE(0x203C, 0x2012, 0x000C, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) SACloseConnection (ConnectionPtr cPtr, WaitUPP idleProc, Boolean remove, Boolean abortIO) SEVENWORDINLINE(0x203C, 0x2012, 0x0010, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) SASendData (ConnectionPtr cPtr, Ptr dataPtr, Size dataSize, ProcPtr completion, WaitUPP idleProc, Boolean isEOM) SEVENWORDINLINE(0x203C, 0x2012, 0x0014, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) SARecvData (ConnectionPtr cPtr, ProcPtr completion, WaitUPP idleProc, Ptr dataPtr, Size dataSize) SEVENWORDINLINE(0x203C, 0x2012, 0x0018, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) SAPrepDSPPB (DSPPBPtr dspPB, short dspCode, short dspRefNum, short ccbRefNum, ProcPtr completion) SEVENWORDINLINE(0x203C, 0x2012, 0x001C, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) SASendAttn (ConnectionPtr cPtr, short attnCode, Ptr attnData, short attnSize, ProcPtr completion) SEVENWORDINLINE(0x203C, 0x2012, 0x0020, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) SASendPSPAttn (ConnectionPtr cPtr, short theCommand, short theResult, Ptr dataPtr, short dataLen) SEVENWORDINLINE(0x203C, 0x2012, 0x0024, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) SAHaveAttn (ConnectionPtr cPtr) SEVENWORDINLINE(0x203C, 0x2012, 0x0028, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) SARecvAttn (ConnectionPtr cPtr, short * attnCode, Ptr * attnData, short * attnSize) SEVENWORDINLINE(0x203C, 0x2012, 0x002C, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) SARecvAttnDone (ConnectionPtr cPtr) SEVENWORDINLINE(0x203C, 0x2012, 0x0030, 0x2078, 0x0948, 0x2050, 0x4E90); /* Font Database Routines: 'tckl' ID #19*/ EXTERN_API_C( OSErr ) FontDbaseInit (TFontDbase * fontDbase, gxSpoolFile theFile, Boolean useMessages) SEVENWORDINLINE(0x203C, 0x2013, 0x0004, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) FontDbaseShutdown (TFontDbase fontDbase, gxSpoolFile theFile, Boolean useMessages) SEVENWORDINLINE(0x203C, 0x2013, 0x0008, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) FontDbaseAddPage (TFontDbase fontDbase, gxShape thePage, Boolean useMac8bitEncoding) SEVENWORDINLINE(0x203C, 0x2013, 0x000C, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) FontDbaseAddItem (TFontDbase fontDbase, gxFlatFontListItem * item, Boolean useMac8bitEncoding) SEVENWORDINLINE(0x203C, 0x2013, 0x0010, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) FontDbaseCountFonts (TFontDbase fontDbase, long * numFonts) SEVENWORDINLINE(0x203C, 0x2013, 0x0014, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) FontDbaseGetIndexedFont (TFontDbase fontDbase, long index, gxFont * fontID) SEVENWORDINLINE(0x203C, 0x2013, 0x0018, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) FontDbaseLock (TFontDbase fontDbase) SEVENWORDINLINE(0x203C, 0x2013, 0x001C, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) FontDbaseUnlock (TFontDbase fontDbase) SEVENWORDINLINE(0x203C, 0x2013, 0x0020, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) FontDbaseGetGlyphBits (TFontDbase fontDbase, gxFont fontID, long snapshot, unsigned long ** glyphBits, gxFontVariation ** variations) SEVENWORDINLINE(0x203C, 0x2013, 0x0024, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) FontDbaseSpoolFonts (TFontDbase fontDbase, gxSpoolFile theFile, Boolean justAppFonts, Handle hExclusionList, Boolean useMessages) SEVENWORDINLINE(0x203C, 0x2013, 0x0028, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) FontDbaseSetFontFlags (TFontDbase fontDbase, gxFont fontID, TfdbInfoFlags flags) SEVENWORDINLINE(0x203C, 0x2013, 0x002C, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) FontDbaseGetFontInfo (TFontDbase fontDbase, gxFont fontID, long * glyphCount, long * axisCount, long * variationCount, TfdbInfoFlags * flags) SEVENWORDINLINE(0x203C, 0x2013, 0x0030, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) FontDbaseBuildPrerequisiteList (TFontDbase fontDbase, scalerStreamTypeFlag streamTypes, char * productDescription, Boolean useMessages, long * count) SEVENWORDINLINE(0x203C, 0x2013, 0x0034, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) FontDbaseGetIndexedPrerequisite (TFontDbase fontDbase, long idx, long * size, gxFont * theFont, scalerPrerequisiteItem * item) SEVENWORDINLINE(0x203C, 0x2013, 0x0038, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) FontDbaseExcludePrerequisite (TFontDbase fontDbase, gxFont theFont, Boolean exclude) SEVENWORDINLINE(0x203C, 0x2013, 0x003C, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) FontDbaseAddStyleEntry (TFontDbase fontDbase, gxStyle theStyle, long numGlyphs, unsigned short glyphs[], Boolean use8BitMacEncoding) SEVENWORDINLINE(0x203C, 0x2013, 0x0040, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) FontDbaseUnion (TFontDbase source, TFontDbase target) SEVENWORDINLINE(0x203C, 0x2013, 0x0044, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) FDBListOfReferencedFONDs (long fontCount, const fontSfntMap fontList[], long * FONDCount, Handle * FONDListPtr) SEVENWORDINLINE(0x203C, 0x2013, 0x0048, 0x2078, 0x0948, 0x2050, 0x4E90); EXTERN_API_C( OSErr ) FDBAddFONDsToResourceFile (long FONDCount, Handle FONDList, gxSpoolFile theFile, Boolean useMessages) SEVENWORDINLINE(0x203C, 0x2013, 0x004C, 0x2078, 0x0948, 0x2050, 0x4E90); #if PRAGMA_STRUCT_ALIGN #pragma options align=reset #elif PRAGMA_STRUCT_PACKPUSH #pragma pack(pop) #elif PRAGMA_STRUCT_PACK #pragma pack() #endif #ifdef PRAGMA_IMPORT_OFF #pragma import off #elif PRAGMA_IMPORT #pragma import reset #endif #ifdef __cplusplus } #endif #endif /* __GXPRINTINGPRIV__ */